Own protocol based on CAN-BUS
Hello.
I need help for create my `ksy file`.
I have my custom protocol based on [CAN-BUS](https://en.wikipedia.org/wiki/CAN_bus).

CAN-BUS:
```yaml
meta:
  id: can_bus
  title: CAN Bus Communication protocol
  endian: be
doc: |
  CAN Bus Communication protocol lorem ipsum
seq:
  - id: can_id
    type: u32
  - id: data
    size: 64
```
```yaml
meta:
  id: et_bus
  title: My Communication protocol
  endian: be
doc: |
  My Communication protocol
seq:
  - id: can_id
    type: can_id
  - id: can_data
    type: can_data
types:
  can_id:
    seq:
     - id: preamble
       contents: 
         - 0b000
     - id: frame_type
       type: b4
     - id: dev_type
       type: b4
     - id: address
       type: b8
     - id: info
       type: b13
  can_data:
   seq:
    - id: data
      size: 8
    
    [ ... ]
```   
My custom spec:

## General frame format 

CAN ID field:
|             	| 31 30 29  	| 28 27 26 25 	| 24 23 22 21 	| 20 19 18 17 16 15 14 13 	| 2 11 10 9 8 7 6 5 4 3 2 1 0 	|
|-------------	|-----------	|-------------	|-------------	|-------------------------	|-----------------------------	|
| Field name  	| PREAMBLE  	| FRAME_TYPE  	| DEV_TYPE    	| ADDRESS                 	| INFO                        	|
| Description 	| value = 0 	| enum        	| enum        	| device's address        	| enum                        	|


####  FRAME_TYPE

| Value 	| FRAME_TYPE           	| Desc        	|
|-------	|----------------------	|-------------	|
| 0     	| FRAME_TYPE_RESERVE0  	| Reserve     	|
| ..    	| ..                   	| ..          	|
| 11    	| FRAME_TYPE_ADC_DATA  	| Analog data 	|
| ..    	| ..                   	| ..          	|
| 15    	| FRAME_TYPE_RESERVE15 	| Reserve     	|


####  DEV_TYPE

| Value 	| DEV_TYPE           	| Desc        	        |
|-------	|----------------------	|-------------	        |
| 0     	| DEV_TYPE_RESERVE0  	| Reserve     	        |
| ..    	| ..                   	| ..          	        |
| 7    	    | DEV_TYPE_ANALOG_CARD  | Analog input device 	|
| ..    	| ..                   	| ..          	        |
| 15    	| DEV_TYPE_RESERVE15 	| Reserve     	        |


## Analog input device 
Data from analog input device 


| INFO1 (5 bits) 	| INFO0 (8 bits)                                                                                                  	| DATA0                 	| DATA1                	| DATA2                 	| DATA3                	|
|----------------	|-----------------------------------------------------------------------------------------------------------------	|-----------------------	|----------------------	|-----------------------	|----------------------	|
| value = 1      	| kind of channel:<br>0 - volt,<br>1 - current<br>if volt: value * scale(2)<br>else if current: value * scale(1)  	| data: channel 1 - hi 	| data: channel 1 - low 	| data: channel 2 - hi 	| data: channel 2 - low 	|

The value is multiplied depending on the type of channel.

#### Example:
**Can ID:**
| PREAMBLE | FRAME_TYPE          | DEV_TYPE             | ADDRESS | INFO1 | INFO0 |
| ---      | ---                 | ---                  | ---     | ---   | ---   |
| 0        | FRAME_TYPE_ADC_DATA | DEV_TYPE_ANALOG_CARD | 0x10    | 0x01  | 0b00000001 |

**Data:**
| DATA0 (ch1.hi)    | DATA1 (ch1.lo) | DATA2 (ch2.hi) | DATA3 (ch2.lo) | 
| ---               | ---            | ---            | ---            |
| 0b00000000        | 0b00000001     | 0b00000000     | 0b00000011     |

**Channel 1**: 
- current
1 * 1 = 1
**Channel 2**: 
- volt
3 * 2 = 6
How to write in ksy file?
