代码工程:
中颖单片机源码如下:- /***************************************************************************************************************************************
- 说明: 串口0转USB接口,需要安装PL2303驱动程序,驱动程序在同一目录中(PL2303USB.zip),安装完成后请查看该虚拟串口对应于哪个串口号COMx
- 在使用串口调试助手时选择该串口号(如COM3等).串口调试工具(serial V2.2.exe)位于UART1活页夹中
- 本程序的功能为:从串口接收一个数据,将此数据再发送回去
- 要求:打开拨码开关J10,使串口转USB接口有效
- ****************************************************************************************************************************************/
- #include <sh88f516.h>
- unsigned char RCV_NUM;
- bit flag1;
- void init();
- void SendChar(unsigned char value);
- void delay100ms(unsigned int delayvalue);
- main()
- {
- init();
-
- while(1)
- {
- if(flag1)
- {
- flag1 = 0;
- SendChar(RCV_NUM);
- delay100ms(10);
- }
- }
- }
- void delay100ms(unsigned int delayvalue)
- {
-
- unsigned int i;
- if (delayvalue)
- {
- delayvalue--;
- for (i=0;i<100;i++)
- {
- ;
- }
- }
- }
- void init()
- {
- CLKCON = 0x00; //时钟设置
- RCAP2H=0xFF; //9600
- RCAP2L=0xCC;
- TH2=0xFF;
- TL2=0xCC;
- T2CON=0x34; //定时器2产生接收和发送波特率,开启定时器,工作在定时器方式,自动重装载
- SCON=0x50; //SM0 SM1 SM2 REN TB8 RB8 TI RI
- //工作在方式1(8位异步方式,可变波特率),允许接收,清0发送接收标志位
- ES0 = 1; //打开串口中断 有时为 ES=1;
- EA = 1; //开启总中断
- }
- void UART0_RCV_INT() interrupt 4 using 3 //串口0接收中断的中断号为4.
- {
- ES0 = 0;
- RCV_NUM = SBUF;
- flag1 = 1;
- RI = 0;
- ES0 = 1;
- }
- void SendChar(unsigned char value)
- {
- ES0 = 0; //ES0=0;
- delay100ms(10);
- SBUF=value; //发送一个字节
- while(TI==0); //等待TI置1
- TI=0; //清除TI
- ES0 = 1; //ES0=1;
- ……………………
- …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码

压缩包里面包含有中颖单片机sh88f516常用功能的源码,中文注释都很详细
下载地址:http://www.51hei.com/bbs/dpj-98300-1.html
|