当前位置: 首页 > news >正文

网站开发 开源南京单位网站建设平台

网站开发 开源,南京单位网站建设平台,欧洲手表网站,福建设计网站目录硬知识串口初始化函数串口1写缓冲函数串口2写缓冲函数串口1写数据块函数串口2写数据块函数模拟串口字节发送函数模拟串口写数据块函数测试硬件串口模拟串口soft_uart.csoft_uart.hmain.cSTC实验箱4 IAP15W4K58S4 Keil uVision V5.29.0.0 PK51 Prof.Developers Kit Versio… 目录硬知识串口初始化函数串口1写缓冲函数串口2写缓冲函数串口1写数据块函数串口2写数据块函数模拟串口字节发送函数模拟串口写数据块函数测试硬件串口模拟串口soft_uart.csoft_uart.hmain.cSTC实验箱4 IAP15W4K58S4 Keil uVision V5.29.0.0 PK51 Prof.Developers Kit Version:9.60.0.0 硬知识 摘自《STC库函数使用参考》 串口初始化函数 USART_Configuration COMx_InitDefine的定义见于文件USART.H。 typedef struct {u8 UART_Mode; u8 UART_BRT_Use; u32 UART_BaudRate; u8 Morecommunicate; u8 UART_RxEnable; u8 BaudRateDouble;u8 UART_Interrupt; u8 UART_Polity; u8 UART_P_SW; u8 UART_RXD_TXD_Short; } COMx_InitDefine;UART_Mode设置USART的工作模式 UART_BRT_Use使用的波特率发生器 UART_BaudRate使用的波特率比如 COMx_InitStructure.UART_BaudRate 115200ul; //UL表示是unsigned longMorecommunicate多机通讯允许 UART_RxEnable接收允许 BaudRateDouble波特率加倍仅仅用于USART1 UART_Interrupt中断允许或禁止 UART_Polity中断的优先级 UART_P_SW切换IO对于串口1的取值 UART_P_SW切换IO对于串口2的取值 UART_RXD_TXD_Short内部TXD与RXD同相缓冲输出做中继对于串口1的取值 串口1写缓冲函数 TX1_write2buff 串口2写缓冲函数 TX2_write2buff 串口1写数据块函数 PrintString1 串口2写数据块函数 PrintString2 模拟串口字节发送函数 TxSend 模拟串口写数据块函数 PrintString 测试 硬件串口 #include ./Drivers/config.h #include ./Drivers/delay.h#include ./Drivers/USART.h #include stdio.hchar putchar(char Char) {TX1_write2buff(Char);return Char; }void UART_config(void) {COMx_InitDefine COMx_InitStructure; //结构定义COMx_InitStructure.UART_Mode UART_8bit_BRTx; //模式, UART_ShiftRight,UART_8bit_BRTx,UART_9bit,UART_9bit_BRTxCOMx_InitStructure.UART_BRT_Use BRT_Timer1; //使用波特率, BRT_Timer1, BRT_Timer2 (注意: 串口2固定使用BRT_Timer2)COMx_InitStructure.UART_BaudRate 115200ul; //波特率, 一般 110 ~ 115200COMx_InitStructure.UART_RxEnable ENABLE; //接收允许, ENABLE或DISABLECOMx_InitStructure.BaudRateDouble DISABLE; //波特率加倍, ENABLE或DISABLECOMx_InitStructure.UART_Interrupt ENABLE; //中断允许, ENABLE或DISABLECOMx_InitStructure.UART_Polity PolityLow; //中断优先级, PolityLow,PolityHighCOMx_InitStructure.UART_P_SW UART1_SW_P30_P31; //切换端口, UART1_SW_P30_P31,UART1_SW_P36_P37,UART1_SW_P16_P17(必须使用内部时钟)COMx_InitStructure.UART_RXD_TXD_Short DISABLE; //内部短路RXD与TXD, 做中继, ENABLE,DISABLEUSART_Configuration(USART1, COMx_InitStructure); //初始化串口1 USART1,USART2 }void main(void) {u8 i;UART_config();EA 1;PrintString1(IAP15W4K58S4 UART1 Test Prgramme!\r\n); //USART1发送一个字符串printf(printf测试%d\r\n, (short)1);while (1){delay_ms(1);if(COM1.RX_TimeOut 0) //超时计数{if(--COM1.RX_TimeOut 0){if(COM1.RX_Cnt 0){for(i0; iCOM1.RX_Cnt; i) TX1_write2buff(RX1_Buffer[i]); //收到的数据原样返回}PrintString1(RX1_Buffer); //收到的数据原样返回 另一种形式COM1.RX_Cnt 0;}}} }模拟串口 在soft_uart.c中修改所用引脚 soft_uart.c /************* 功能说明 **************本文件为模拟串口发送程序, 一般为测试监控用.串口参数:9600,8,n,1.可以根据主时钟自动适应.******************************************/#include soft_uart.hsbit P_TXD P3^1; //定义模拟串口发送端,可以是任意IOchar putchar(char Char) {TxSend(Char);return Char; }// // 函数: void BitTime(void) // 描述: 位时间函数。 // 参数: none. // 返回: none. // 版本: VER1.0 // 日期: 2013-4-1 // 备注: // void BitTime(void) {u16 i;i ((MAIN_Fosc / SOFT_UART_BAUD) * 1000) / 13000L - 1; //根据主时钟来计算位时间while(--i); }// // 函数: void TxSend(uchar dat) // 描述: 模拟串口发送一个字节。9600N81 // 参数: dat: 要发送的数据字节. // 返回: none. // 版本: VER1.0 // 日期: 2013-4-1 // 备注: // void TxSend(u8 dat) {u8 i;EA 0;P_TXD 0;BitTime();for(i0; i8; i){if(dat 1) P_TXD 1;else P_TXD 0;dat 1;BitTime();}P_TXD 1;EA 1;BitTime();BitTime(); }// // 函数: void PrintString(unsigned char code *puts) // 描述: 模拟串口发送一串字符串。9600N81 // 参数: *puts: 要发送的字符指针. // 返回: none. // 版本: VER1.0 // 日期: 2013-4-1 // 备注: // void PrintString(unsigned char code *puts) {for (; *puts ! 0; puts) TxSend(*puts); } soft_uart.h #ifndef __SOFT_UART_H #define __SOFT_UART_H#include config.h #include stdio.h#define SOFT_UART_BAUD 9600void TxSend(u8 dat); void PrintString(unsigned char code *puts);#endif main.c #include ./Drivers/config.h #include ./Drivers/delay.h#include ./Drivers/soft_UART.hvoid main(void) {while (1){PrintString(IAP15W4K58S4 Soft UART Test Prgramme!\r\n);printf(printf测试%d\r\n, (short)1);delay_ms(500);} }
http://www.zqtcl.cn/news/214020/

相关文章:

  • 有需要做网站推广找我网站怎么 备案
  • 怎么把网站放到服务器上站长工具seo综合查询外部链接数量
  • 做网站上市的公司开一家公司最低注册资金
  • 仙居谁认识做网站的有哪些好的网站建设
  • 互动广告机网站建设怀集网站建设
  • 好的 做网站的软件公司pinterest app下载
  • 公司网站报价邯郸软件定制
  • 产品毕业设计代做网站资料库网站源码
  • 交易类网站做支付宝功能建设银行网站收款怎么打明细
  • 广州找人做网站做网站网关备案
  • 网站的布局方式有哪些内容免费ppt模板下载公众号
  • 色91Av做爰网站获胜者网站建设
  • 企业做网站要多少钱简单网页设计模板网站
  • 住宅城乡建设部门户网站seo主管的seo优化方案
  • 商洛做网站电话北京做网站比较大的公司
  • 某俄文网站电脑做网站服务器
  • 广州网站建设开发团队江苏省建设招标网站
  • 南昌建设工程质量监督网站wordpress菜单登录
  • 网站设计贵不贵网站seo设置是什么
  • 不属于企业网站建设基本标准的是南通网站建设知识
  • 玉树州wap网站建设公司做试玩网站
  • 商城网站怎么建保定网络营销网站建设
  • 检索类的网站建设公司的网站建设规划书
  • 百度做网站需要交钱吗保定网站建设平台分析
  • 张家界建设局网站电话优化关键词排名公司
  • 宁夏网站建设一条龙网站建设中的图片及视频要求
  • 某些网站dns解析失败湛江制作企业网站
  • 网站开发用什么代码长沙哪家公司做网站
  • 做视频找素材的网站有哪些wordpress 合法评论
  • php网站开发程序填空题高水平网站运营托管