482 ; 31 void UartSendData_IO_0 ( unsigned char DATA )
482 ; 32 {
483 scross off
484 switch .text
485 0000 _UartSendData_IO_0:
486 0000 88 push a
487 0001 520a subw sp,#10
488 0000000a OFST: set 10
490 ; 33 unsigned char b0,b1,b2,b3, b4,b5,b6,b7,st=0,nd=1;
491 0003 7b01 ld a,(OFST-9,sp)
492 0005 97 ld xl,a
494 0006 7b02 ld a,(OFST-8,sp)
495 0008 97 ld xl,a
496 ; 34 b0 = DATA &1; DATA = DATA>>1;
497 0009 7b0b ld a,(OFST+1,sp)
498 000b a401 and a,#1
499 000d 6b03 ld (OFST-7,sp),a
501 000f 040b srl (OFST+1,sp)
502 ; 35 b1 = DATA &1; DATA = DATA>>1;
503 0011 7b0b ld a,(OFST+1,sp)
504 0013 a401 and a,#1
505 0015 6b04 ld (OFST-6,sp),a
507 0017 040b srl (OFST+1,sp)
508 ; 36 b2 = DATA &1; DATA = DATA>>1;
509 0019 7b0b ld a,(OFST+1,sp)
510 001b a401 and a,#1
511 001d 6b05 ld (OFST-5,sp),a
513 001f 040b srl (OFST+1,sp)
514 ; 37 b3 = DATA &1; DATA = DATA>>1;
515 0021 7b0b ld a,(OFST+1,sp)
516 0023 a401 and a,#1
517 0025 6b06 ld (OFST-4,sp),a
519 0027 040b srl (OFST+1,sp)
520 ; 38 b4 = DATA &1; DATA = DATA>>1;
521 0029 7b0b ld a,(OFST+1,sp)
522 002b a401 and a,#1
523 002d 6b07 ld (OFST-3,sp),a
525 002f 040b srl (OFST+1,sp)
526 ; 39 b5 = DATA &1; DATA = DATA>>1;
527 0031 7b0b ld a,(OFST+1,sp)
528 0033 a401 and a,#1
529 0035 6b08 ld (OFST-2,sp),a
531 0037 040b srl (OFST+1,sp)
532 ; 40 b6 = DATA &1; DATA = DATA>>1;
533 0039 7b0b ld a,(OFST+1,sp)
534 003b a401 and a,#1
535 003d 6b09 ld (OFST-1,sp),a
537 003f 040b srl (OFST+1,sp)
538 ; 41 b7 = DATA &1;
539 0041 7b0b ld a,(OFST+1,sp)
540 0043 a401 and a,#1
541 0045 6b0a ld (OFST+0,sp),a
542 ; 43 TXD2=st; //start
543 0047 72155014 bres _PE,#2
544 ; 44 TXD2=b0;
545 004b 7b03 ld a,(OFST-7,sp)
546 004d 44 srl a
547 004e 90155014 bccm _PE,#2
548 ; 45 TXD2=b1;
549 0052 7b04 ld a,(OFST-6,sp)
550 0054 44 srl a
551 0055 90155014 bccm _PE,#2
552 ; 46 TXD2=b2;
553 0059 7b05 ld a,(OFST-5,sp)
554 005b 44 srl a
555 005c 90155014 bccm _PE,#2
556 ; 47 TXD2=b3;
557 0060 7b06 ld a,(OFST-4,sp)
558 0062 44 srl a
559 0063 90155014 bccm _PE,#2
560 ; 48 TXD2=b4;
561 0067 7b07 ld a,(OFST-3,sp)
562 0069 44 srl a
563 006a 90155014 bccm _PE,#2
564 ; 49 TXD2=b5;
565 006e 7b08 ld a,(OFST-2,sp)
566 0070 44 srl a
567 0071 90155014 bccm _PE,#2
568 ; 50 TXD2=b6;
569 0075 7b09 ld a,(OFST-1,sp)
570 0077 44 srl a
571 0078 90155014 bccm _PE,#2
572 ; 51 TXD2=b7;
573 007c 7b0a ld a,(OFST+0,sp)
574 007e 44 srl a
575 007f 90155014 bccm _PE,#2
576 ; 52 TXD2=nd; //stop
577 0083 72145014 bset _PE,#2
578 ; 53 }
579 0087 5b0b addw sp,#11
580 0089 81 ret
582 ; 55 void UartSendData_IO_1 ( unsigned char DATA )
582 ; 56 {
583 008a _UartSendData_IO_1:
584 008a 88 push a
585 008b 520a subw sp,#10
586 0000000a OFST: set 10
588 ; 57 unsigned char b0,b1,b2,b3, b4,b5,b6,b7,st=0,nd=1;
589 008d 0f01 clr (OFST-9,sp)
591 008f a601 ld a,#1
592 0091 6b02 ld (OFST-8,sp),a
593 ; 58 b0 = DATA &1; DATA = DATA>>1;
594 0093 7b0b ld a,(OFST+1,sp)
595 0095 a401 and a,#1
596 0097 6b03 ld (OFST-7,sp),a
598 0099 040b srl (OFST+1,sp)
599 ; 59 b1 = DATA &1; DATA = DATA>>1;
600 009b 7b0b ld a,(OFST+1,sp)
601 009d a401 and a,#1
602 009f 6b04 ld (OFST-6,sp),a
604 00a1 040b srl (OFST+1,sp)
605 ; 60 b2 = DATA &1; DATA = DATA>>1;
606 00a3 7b0b ld a,(OFST+1,sp)
607 00a5 a401 and a,#1
608 00a7 6b05 ld (OFST-5,sp),a
610 00a9 040b srl (OFST+1,sp)
611 ; 61 b3 = DATA &1; DATA = DATA>>1;
612 00ab 7b0b ld a,(OFST+1,sp)
613 00ad a401 and a,#1
614 00af 6b06 ld (OFST-4,sp),a
616 00b1 040b srl (OFST+1,sp)
617 ; 62 b4 = DATA &1; DATA = DATA>>1;
618 00b3 7b0b ld a,(OFST+1,sp)
619 00b5 a401 and a,#1
620 00b7 6b07 ld (OFST-3,sp),a
622 00b9 040b srl (OFST+1,sp)
623 ; 63 b5 = DATA &1; DATA = DATA>>1;
624 00bb 7b0b ld a,(OFST+1,sp)
625 00bd a401 and a,#1
626 00bf 6b08 ld (OFST-2,sp),a
628 00c1 040b srl (OFST+1,sp)
629 ; 64 b6 = DATA &1; DATA = DATA>>1;
630 00c3 7b0b ld a,(OFST+1,sp)
631 00c5 a401 and a,#1
632 00c7 6b09 ld (OFST-1,sp),a
634 00c9 040b srl (OFST+1,sp)
635 ; 65 b7 = DATA &1; nop();
636 00cb 7b0b ld a,(OFST+1,sp)
637 00cd a401 and a,#1
638 00cf 6b0a ld (OFST+0,sp),a
641 00d1 9d nop
643 ; 67 TXD2=st; //start
644 00d2 7b01 ld a,(OFST-9,sp)
645 00d4 44 srl a
646 00d5 90155014 bccm _PE,#2
647 ; 68 TXD2=b0;
648 00d9 7b03 ld a,(OFST-7,sp)
649 00db 44 srl a
650 00dc 90155014 bccm _PE,#2
651 ; 69 TXD2=b1;
652 00e0 7b04 ld a,(OFST-6,sp)
653 00e2 44 srl a
654 00e3 90155014 bccm _PE,#2
655 ; 70 TXD2=b2;
656 00e7 7b05 ld a,(OFST-5,sp)
657 00e9 44 srl a
658 00ea 90155014 bccm _PE,#2
659 ; 71 TXD2=b3;
660 00ee 7b06 ld a,(OFST-4,sp)
661 00f0 44 srl a
662 00f1 90155014 bccm _PE,#2
663 ; 72 TXD2=b4;
664 00f5 7b07 ld a,(OFST-3,sp)
665 00f7 44 srl a
666 00f8 90155014 bccm _PE,#2
667 ; 73 TXD2=b5;
668 00fc 7b08 ld a,(OFST-2,sp)
669 00fe 44 srl a
670 00ff 90155014 bccm _PE,#2
671 ; 74 TXD2=b6;
672 0103 7b09 ld a,(OFST-1,sp)
673 0105 44 srl a
674 0106 90155014 bccm _PE,#2
675 ; 75 TXD2=b7;
676 010a 7b0a ld a,(OFST+0,sp)
677 010c 44 srl a
678 010d 90155014 bccm _PE,#2
679 ; 76 TXD2=nd; //stop
680 0111 7b02 ld a,(OFST-8,sp)
681 0113 44 srl a
682 0114 90155014 bccm _PE,#2
683 ; 77 }
684 0118 5b0b addw sp,#11
685 011a 81 ret
687 ; 79 void UartSendData_IO_2 ( unsigned char DATA )
687 ; 80 {
688 011b _UartSendData_IO_2:
689 011b 88 push a
690 011c 520a subw sp,#10
691 0000000a OFST: set 10
693 ; 81 unsigned char b0,b1,b2,b3, b4,b5,b6,b7,st=0,nd=1;
694 011e 0f01 clr (OFST-9,sp)
696 0120 a601 ld a,#1
697 0122 6b02 ld (OFST-8,sp),a
698 ; 82 b0 = DATA &1; DATA = DATA>>1;
699 0124 7b0b ld a,(OFST+1,sp)
700 0126 a401 and a,#1
701 0128 6b03 ld (OFST-7,sp),a
703 012a 040b srl (OFST+1,sp)
704 ; 83 b1 = DATA &1; DATA = DATA>>1;
705 012c 7b0b ld a,(OFST+1,sp)
706 012e a401 and a,#1
707 0130 6b04 ld (OFST-6,sp),a
709 0132 040b srl (OFST+1,sp)
710 ; 84 b2 = DATA &1; DATA = DATA>>1;
711 0134 7b0b ld a,(OFST+1,sp)
712 0136 a401 and a,#1
713 0138 6b05 ld (OFST-5,sp),a
715 013a 040b srl (OFST+1,sp)
716 ; 85 b3 = DATA &1; DATA = DATA>>1;
717 013c 7b0b ld a,(OFST+1,sp)
718 013e a401 and a,#1
719 0140 6b06 ld (OFST-4,sp),a
721 0142 040b srl (OFST+1,sp)
722 ; 86 b4 = DATA &1; DATA = DATA>>1;
723 0144 7b0b ld a,(OFST+1,sp)
724 0146 a401 and a,#1
725 0148 6b07 ld (OFST-3,sp),a
727 014a 040b srl (OFST+1,sp)
728 ; 87 b5 = DATA &1; DATA = DATA>>1;
729 014c 7b0b ld a,(OFST+1,sp)
730 014e a401 and a,#1
731 0150 6b08 ld (OFST-2,sp),a
733 0152 040b srl (OFST+1,sp)
734 ; 88 b6 = DATA &1; DATA = DATA>>1;
735 0154 7b0b ld a,(OFST+1,sp)
736 0156 a401 and a,#1
737 0158 6b09 ld (OFST-1,sp),a
739 015a 040b srl (OFST+1,sp)
740 ; 89 b7 = DATA &1; nop(); nop();
741 015c 7b0b ld a,(OFST+1,sp)
742 015e a401 and a,#1
743 0160 6b0a ld (OFST+0,sp),a
746 0162 9d nop
750 0163 9d nop
752 ; 91 TXD2=st; //start
753 0164 7b01 ld a,(OFST-9,sp)
754 0166 44 srl a
755 0167 90155014 bccm _PE,#2
756 ; 92 TXD2=b0;
757 016b 7b03 ld a,(OFST-7,sp)
758 016d 44 srl a
759 016e 90155014 bccm _PE,#2
760 ; 93 TXD2=b1;
761 0172 7b04 ld a,(OFST-6,sp)
762 0174 44 srl a
763 0175 90155014 bccm _PE,#2
764 ; 94 TXD2=b2;
765 0179 7b05 ld a,(OFST-5,sp)
766 017b 44 srl a
767 017c 90155014 bccm _PE,#2
768 ; 95 TXD2=b3;
769 0180 7b06 ld a,(OFST-4,sp)
770 0182 44 srl a
771 0183 90155014 bccm _PE,#2
772 ; 96 TXD2=b4;
773 0187 7b07 ld a,(OFST-3,sp)
774 0189 44 srl a
775 018a 90155014 bccm _PE,#2
776 ; 97 TXD2=b5;
777 018e 7b08 ld a,(OFST-2,sp)
778 0190 44 srl a
779 0191 90155014 bccm _PE,#2
780 ; 98 TXD2=b6;
781 0195 7b09 ld a,(OFST-1,sp)
782 0197 44 srl a
783 0198 90155014 bccm _PE,#2
784 ; 99 TXD2=b7;
785 019c 7b0a ld a,(OFST+0,sp)
786 019e 44 srl a
787 019f 90155014 bccm _PE,#2
788 ; 100 TXD2=nd; //stop
789 01a3 7b02 ld a,(OFST-8,sp)
790 01a5 44 srl a
791 01a6 90155014 bccm _PE,#2
792 ; 101 }
793 01aa 5b0b addw sp,#11
794 01ac 81 ret
796 ; 103 void UartSendData_IO_3 ( unsigned char DATA )
796 ; 104 {
797 01ad _UartSendData_IO_3:
798 01ad 88 push a
799 01ae 520a subw sp,#10
800 0000000a OFST: set 10
802 ; 105 unsigned char b0,b1,b2,b3, b4,b5,b6,b7,st=0,nd=1;
803 01b0 0f01 clr (OFST-9,sp)
805 01b2 a601 ld a,#1
806 01b4 6b02 ld (OFST-8,sp),a
807 ; 106 b0 = DATA &1; DATA = DATA>>1;
808 01b6 7b0b ld a,(OFST+1,sp)
809 01b8 a401 and a,#1
810 01ba 6b03 ld (OFST-7,sp),a
812 01bc 040b srl (OFST+1,sp)
813 ; 107 b1 = DATA &1; DATA = DATA>>1;
814 01be 7b0b ld a,(OFST+1,sp)
815 01c0 a401 and a,#1
816 01c2 6b04 ld (OFST-6,sp),a
818 01c4 040b srl (OFST+1,sp)
819 ; 108 b2 = DATA &1; DATA = DATA>>1;
820 01c6 7b0b ld a,(OFST+1,sp)
821 01c8 a401 and a,#1
822 01ca 6b05 ld (OFST-5,sp),a
824 01cc 040b srl (OFST+1,sp)
825 ; 109 b3 = DATA &1; DATA = DATA>>1;
826 01ce 7b0b ld a,(OFST+1,sp)
827 01d0 a401 and a,#1
828 01d2 6b06 ld (OFST-4,sp),a
830 01d4 040b srl (OFST+1,sp)
831 ; 110 b4 = DATA &1; DATA = DATA>>1;
832 01d6 7b0b ld a,(OFST+1,sp)
833 01d8 a401 and a,#1
834 01da 6b07 ld (OFST-3,sp),a
836 01dc 040b srl (OFST+1,sp)
837 ; 111 b5 = DATA &1; DATA = DATA>>1;
838 01de 7b0b ld a,(OFST+1,sp)
839 01e0 a401 and a,#1
840 01e2 6b08 ld (OFST-2,sp),a
842 01e4 040b srl (OFST+1,sp)
843 ; 112 b6 = DATA &1; DATA = DATA>>1;
844 01e6 7b0b ld a,(OFST+1,sp)
845 01e8 a401 and a,#1
846 01ea 6b09 ld (OFST-1,sp),a
848 01ec 040b srl (OFST+1,sp)
849 ; 113 b7 = DATA &1; nop();nop();nop();
850 01ee 7b0b ld a,(OFST+1,sp)
851 01f0 a401 and a,#1
852 01f2 6b0a ld (OFST+0,sp),a
855 01f4 9d nop
859 01f5 9d nop
863 01f6 9d nop
865 ; 115 TXD2=st; //start
866 01f7 7b01 ld a,(OFST-9,sp)
867 01f9 44 srl a
868 01fa 90155014 bccm _PE,#2
869 ; 116 TXD2=b0;
870 01fe 7b03 ld a,(OFST-7,sp)
871 0200 44 srl a
872 0201 90155014 bccm _PE,#2
873 ; 117 TXD2=b1;
874 0205 7b04 ld a,(OFST-6,sp)
875 0207 44 srl a
876 0208 90155014 bccm _PE,#2
877 ; 118 TXD2=b2;
878 020c 7b05 ld a,(OFST-5,sp)
879 020e 44 srl a
880 020f 90155014 bccm _PE,#2
881 ; 119 TXD2=b3;
882 0213 7b06 ld a,(OFST-4,sp)
883 0215 44 srl a
884 0216 90155014 bccm _PE,#2
885 ; 120 TXD2=b4;
886 021a 7b07 ld a,(OFST-3,sp)
887 021c 44 srl a
888 021d 90155014 bccm _PE,#2
889 ; 121 TXD2=b5;
890 0221 7b08 ld a,(OFST-2,sp)
891 0223 44 srl a
892 0224 90155014 bccm _PE,#2
893 ; 122 TXD2=b6;
894 0228 7b09 ld a,(OFST-1,sp)
895 022a 44 srl a
896 022b 90155014 bccm _PE,#2
897 ; 123 TXD2=b7;
898 022f 7b0a ld a,(OFST+0,sp)
899 0231 44 srl a
900 0232 90155014 bccm _PE,#2
901 ; 124 TXD2=nd; //stop
902 0236 7b02 ld a,(OFST-8,sp)
903 0238 44 srl a
904 0239 90155014 bccm _PE,#2
905 ; 125 }
906 023d 5b0b addw sp,#11
907 023f 81 ret
909 ; 132 void main(void) |