| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170 |
- C51 COMPILER V9.53.0.0 COMMON 09/30/2018 11:45:28 PAGE 1
- C51 COMPILER V9.53.0.0, COMPILATION OF MODULE COMMON
- OBJECT MODULE PLACED IN .\Output\Common.obj
- COMPILER INVOKED BY: D:\Keil_v5\C51\BIN\C51.EXE ..\..\Code\keil_common\Common\Common.c LARGE OPTIMIZE(0,SPEED) BROWSE IN
- -CDIR(../../Code/Include;../../Code/User;../../Code/User/Common;../../Code/User/Driver) DEFINE(FOSC_160000=1) DEBUG OBJEC
- -TEXTEND PRINT(.\Output\LST\Common.lst) TABS(2) OBJECT(.\Output\Common.obj)
- line level source
- 1 /*--------------------------------------------------------------------------------------------------------
- --*/
- 2 /*
- - */
- 3 /* Copyright(c) 2016 Nuvoton Technology Corp. All rights reserved.
- - */
- 4 /*
- - */
- 5 /*--------------------------------------------------------------------------------------------------------
- --*/
- 6
- 7 //********************************************************************************************************
- -***
- 8 // Nuvoton Technoledge Corp.
- 9 // Website: http://www.nuvoton.com
- 10 // E-Mail : [email protected]
- 11 // Date : Apr/21/2016
- 12 //********************************************************************************************************
- -***
- 13
- 14 #include "N76E003.h"
- 15 #include "Common.h"
- 16 #include "Delay.h"
- 17 #include "SFR_Macro.h"
- 18 #include "Function_define.h"
- 19
- 20 //----------------------------------------------------------------------------------
- 21 // UART0 baud rate initial setting
- 22 //----------------------------------------------------------------------------------
- 23 void InitialUART0_Timer1(UINT32 u32Baudrate) //T1M = 1, SMOD = 1
- 24 {
- 25 1 P06_Quasi_Mode; //Setting UART pin as Quasi mode for transmit
- 26 1 P07_Quasi_Mode; //Setting UART pin as Quasi mode for transmit
- 27 1
- 28 1 SCON = 0x50; //UART0 Mode1,REN=1,TI=1
- 29 1 TMOD |= 0x20; //Timer1 Mode1
- 30 1
- 31 1 set_SMOD; //UART0 Double Rate Enable
- 32 1 set_T1M;
- 33 1 clr_BRCK; //Serial port 0 baud rate clock source = Timer1
- 34 1
- 35 1 #ifdef FOSC_160000
- 36 1 TH1 = 256 - (1000000/u32Baudrate+1); /*16 MHz */
- 37 1 #endif
- 38 1 #ifdef FOSC_166000
- TH1 = 256 - (1037500/u32Baudrate); /*16.6 MHz */
- #endif
- 41 1 set_TR1;
- 42 1 set_TI; //For printf function must setting TI = 1
- 43 1 }
- 44 //---------------------------------------------------------------
- 45 void InitialUART0_Timer3(UINT32 u32Baudrate) //use timer3 as Baudrate generator
- 46 {
- C51 COMPILER V9.53.0.0 COMMON 09/30/2018 11:45:28 PAGE 2
- 47 1 P06_Quasi_Mode; //Setting UART pin as Quasi mode for transmit
- 48 1 P07_Quasi_Mode; //Setting UART pin as Quasi mode for transmit
- 49 1
- 50 1 SCON = 0x50; //UART0 Mode1,REN=1,TI=1
- 51 1 set_SMOD; //UART0 Double Rate Enable
- 52 1 T3CON &= 0xF8; //T3PS2=0,T3PS1=0,T3PS0=0(Prescale=1)
- 53 1 set_BRCK; //UART0 baud rate clock source = Timer3
- 54 1
- 55 1 #ifdef FOSC_160000
- 56 1 RH3 = HIBYTE(65536 - (1000000/u32Baudrate)-1); /*16 MHz */
- 57 1 RL3 = LOBYTE(65536 - (1000000/u32Baudrate)-1); /*16 MHz */
- 58 1 #endif
- 59 1 #ifdef FOSC_166000
- RH3 = HIBYTE(65536 - (1037500/u32Baudrate)); /*16.6 MHz */
- RL3 = LOBYTE(65536 - (1037500/u32Baudrate)); /*16.6 MHz */
- #endif
- 63 1 set_TR3; //Trigger Timer3
- 64 1 set_TI; //For printf function must setting TI = 1
- 65 1 }
- 66
- 67 UINT8 Receive_Data_From_UART0(void)
- 68 {
- 69 1 UINT8 c;
- 70 1 while (!RI);
- 71 1 c = SBUF;
- 72 1 RI = 0;
- 73 1 return (c);
- 74 1 }
- 75
- 76 void Send_Data_To_UART0 (UINT8 c)
- 77 {
- 78 1 TI = 0;
- 79 1 SBUF = c;
- 80 1 while(TI==0);
- 81 1 }
- 82
- 83
- 84 //----------------------------------------------------------------------------------
- 85 // UART1 baud rate initial setting
- 86 //----------------------------------------------------------------------------------
- 87 void InitialUART1_Timer3(UINT32 u32Baudrate) //use timer3 as Baudrate generator
- 88 {
- 89 1 P02_Quasi_Mode; //Setting UART pin as Quasi mode for transmit
- 90 1 P16_Quasi_Mode; //Setting UART pin as Quasi mode for transmit
- 91 1
- 92 1 SCON_1 = 0x50; //UART1 Mode1,REN_1=1,TI_1=1
- 93 1 T3CON = 0x08; //T3PS2=0,T3PS1=0,T3PS0=0(Prescale=1), UART1 in MODE 1
- 94 1 clr_BRCK;
- 95 1
- 96 1 #ifdef FOSC_160000
- 97 1 RH3 = HIBYTE(65536 - (1000000/u32Baudrate)-1); /*16 MHz */
- 98 1 RL3 = LOBYTE(65536 - (1000000/u32Baudrate)-1); /*16 MHz */
- 99 1 #endif
- 100 1 #ifdef FOSC_166000
- RH3 = HIBYTE(65536 - (1037500/u32Baudrate)); /*16.6 MHz */
- RL3 = LOBYTE(65536 - (1037500/u32Baudrate)); /*16.6 MHz */
- #endif
- 104 1 set_TR3; //Trigger Timer3
- 105 1 }
- 106
- 107 UINT8 Receive_Data_From_UART1(void)
- 108 {
- C51 COMPILER V9.53.0.0 COMMON 09/30/2018 11:45:28 PAGE 3
- 109 1 UINT8 c;
- 110 1
- 111 1 while (!RI_1);
- 112 1 c = SBUF_1;
- 113 1 RI_1 = 0;
- 114 1 return (c);
- 115 1 }
- 116
- 117 void Send_Data_To_UART1 (UINT8 c)
- 118 {
- 119 1 TI_1 = 0;
- 120 1 SBUF_1 = c;
- 121 1 while(TI_1==0);
- 122 1 }
- 123
- 124
- 125 /*==========================================================================*/
- 126 #ifdef SW_Reset
- void SW_Reset(void)
- {
- TA = 0xAA;
- TA = 0x55;
- set_SWRST;
- }
- #endif
- 134 /*==========================================================================*/
- MODULE INFORMATION: STATIC OVERLAYABLE
- CODE SIZE = 450 ----
- CONSTANT SIZE = ---- ----
- XDATA SIZE = 16 ----
- PDATA SIZE = ---- ----
- DATA SIZE = ---- ----
- IDATA SIZE = ---- ----
- BIT SIZE = ---- ----
- END OF MODULE INFORMATION.
- C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
|