Seriekommunikation Viktor Kämpe
Sändare Data buss Mottagare Data buss CS OE Data egister OE Data egister E Clock Shift egister xd Serial data out Serial data in xd Clock Shift egister Sändare och mottagares klockor går i samma takt 2
S232 överföring av tecknet z tecknet z representeras av bitmönstret 0111 1010 (ASCII-tecken). + 10 volt 0 volt - 10 volt S A B I idle 0 0 1 0 1 1 1 1 0 0 1 idle P A I Y B I S O P B I tid z minst signifikanta bit först 3
Gränssnitt Serial Communication Interface (SCI) Offset 7 6 5 4 3 2 1 0 Mnemonic Namn $00 0 0 0 Baud ate SB12 SB11 SB10 SB9 SB8 SCIBDH egister High $01 Baud ate SB7 SB6 SB5 SB4 SB3 SB2 SB1 SB0 SCIBDL egister Low $02 LOOPS SCISAI SC M AKE IL PE P SCIC1 egister 1 $03 IE CIE IE ILIE E E U SBK SCIC2 egister 2 $04 DE C DF IDLE O NF FE PF SCIS1 egister 1 $05 0 0 0 0 0 AF BK13 XDI SCIS2 egister 2 $06 8 0 0 0 0 0 0 Data egister 8 SCIDH High $07 7 6 5 4 3 2 1 0 Data egister SCIDL 7 6 5 4 3 2 1 0 Low ecieve ransmit Init Seriekommunikation/VK 4
Förkortningar Serial Communication Interface (SCI) Offset 7 6 5 4 3 2 1 0 Mnemonic Namn $00 0 0 0 Baud ate SB12 SB11 SB10 SB9 SB8 SCIBDH egister High $01 Baud ate SB7 SB6 SB5 SB4 SB3 SB2 SB1 SB0 SCIBDL egister Low $02 LOOPS SCISAI SC M AKE IL PE P SCIC1 egister 1 $03 IE CIE IE ILIE E E U SBK SCIC2 egister 2 $04 DE C DF IDLE O NF FE PF SCIS1 egister 1 $05 0 0 0 0 0 AF BK13 XDI SCIS2 egister 2 $06 8 0 0 0 0 0 0 Data egister 8 SCIDH High $07 7 6 5 4 3 2 1 0 Data egister SCIDL 7 6 5 4 3 2 1 0 Low SB E / E DE DF Serial Baud ate ransmit Enable / ecieve Enable ransmit Data egister Empty ecieve Data egister Full Seriekommunikation/VK 5
Initiering Serial Communication Interface (SCI) Offset 7 6 5 4 3 2 1 0 Mnemonic Namn $00 0 0 0 Baud ate SB12 SB11 SB10 SB9 SB8 SCIBDH egister High $01 Baud ate SB7 SB6 SB5 SB4 SB3 SB2 SB1 SB0 SCIBDL egister Low $02 LOOPS SCISAI SC M AKE IL PE P SCIC1 egister 1 $03 IE CIE IE ILIE E E U SBK SCIC2 egister 2 $04 DE C DF IDLE O NF FE PF SCIS1 egister 1 $05 0 0 0 0 0 AF BK13 XDI SCIS2 egister 2 $06 8 0 0 0 0 0 0 Data egister 8 SCIDH High $07 7 6 5 4 3 2 1 0 Data egister SCIDL 7 6 5 4 3 2 1 0 Low ecieve ransmit Init 1 Kolla om redo 1 Kolla om redo 1 Sätt hastighet 2 Läs 2 Skriv 2 Aktivera och Seriekommunikation/VK 6
Skicka Serial Communication Interface (SCI) Offset 7 6 5 4 3 2 1 0 Mnemonic Namn $00 0 0 0 Baud ate SB12 SB11 SB10 SB9 SB8 SCIBDH egister High $01 Baud ate SB7 SB6 SB5 SB4 SB3 SB2 SB1 SB0 SCIBDL egister Low $02 LOOPS SCISAI SC M AKE IL PE P SCIC1 egister 1 $03 IE CIE IE ILIE E E U SBK SCIC2 egister 2 $04 DE C DF IDLE O NF FE PF SCIS1 egister 1 $05 0 0 0 0 0 AF BK13 XDI SCIS2 egister 2 $06 8 0 0 0 0 0 0 Data egister 8 SCIDH High $07 7 6 5 4 3 2 1 0 Data egister SCIDL 7 6 5 4 3 2 1 0 Low ecieve ransmit Init 1 Kolla om redo 1 Kolla om redo 1 Sätt hastighet 2 Läs 2 Skriv 2 Aktivera och Seriekommunikation/VK 7
a emot Serial Communication Interface (SCI) Offset 7 6 5 4 3 2 1 0 Mnemonic Namn $00 0 0 0 Baud ate SB12 SB11 SB10 SB9 SB8 SCIBDH egister High $01 Baud ate SB7 SB6 SB5 SB4 SB3 SB2 SB1 SB0 SCIBDL egister Low $02 LOOPS SCISAI SC M AKE IL PE P SCIC1 egister 1 $03 IE CIE IE ILIE E E U SBK SCIC2 egister 2 $04 DE C DF IDLE O NF FE PF SCIS1 egister 1 $05 0 0 0 0 0 AF BK13 XDI SCIS2 egister 2 $06 8 0 0 0 0 0 0 Data egister 8 SCIDH High $07 7 6 5 4 3 2 1 0 Data egister SCIDL 7 6 5 4 3 2 1 0 Low ecieve ransmit Init 1 Kolla om redo 1 Kolla om redo 1 Sätt hastighet 2 Läs 2 Skriv 2 Aktivera och Seriekommunikation/VK 8
[Exempel i XCC12] Seriekommunikation/VK 9
Förbättringar Byt busy-wait mot avbrottsdrivning Seriekommunikation/VK 10