时间:2015-07-22 来源:

STM32F030UART应用 【系统运维】

//==文件uart.h============================================================
#ifndef _UART_H_
#define _UART_H_

#define			V_UART_RX			0   //接收时状态
#define			V_UART_TX			1		//发送时状态

#define			V_RX_NUM		11	//接收数据字节长

#define			V_TX_NUM		8 //发送数据字节长

#define			VT_ClrRxIndex		5		//50ms没有接收到数据 清除接收索引

//==================================================
extern uint8 Rx_Buf[V_RX_NUM] ;
extern uint8 Tx_Buf[V_TX_NUM] ;
extern uint8 Rx_Index ;
extern uint8 Tx_Index ;

extern void uart_putc(unsigned char c);
extern void uart_puts(char *s ) ;
extern void USART_INIT(void) ;

extern void USART_GPIO_Init(void) ;
extern void USART_Param_Init(uint32 Invalue) ;
extern void Init_Uart_SendDat(uint8 Invalue) ;

extern uint8 CalcateCheckSumUart(uint8 *a, GPIO_AF_0);
		GPIO_PinAFConfig(GPIOB, GPIO_PinSource7, &GPIO_InitStructure);
			
			USART_ClearITPendingBit(USART1,USART_IT_RXNE,USART_IT_TC, &GPIO_InitStructure);
			
			GPIO_PinAFConfig(GPIOB, GPIO_AF_0);
				
			USART_ITConfig(USART1,DISABLE );//接收中断不使能
			USART_ClearITPendingBit(USART1,USART_IT_TC, ENABLE );		
		
		NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn;
		NVIC_InitStructure.NVIC_IRQChannelPriority = 2;
		NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
		NVIC_Init(&NVIC_InitStructure);

		   
		USART_InitStructure.USART_BaudRate = 4800;//9600
		USART_InitStructure.USART_WordLength = USART_WordLength_8b;
		USART_InitStructure.USART_StopBits = USART_StopBits_1;
		USART_InitStructure.USART_Parity = USART_Parity_No;
		USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
		USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;
		USART_Init(USART1, ENABLE);
		
		USART_ClearITPendingBit(USART1,USART_IT_RXNE,USART_IT_TC) ;		//清除发送中断标志
//		USART_ITConfig(USART1,ENABLE); //发送中断使能 USART_IT_TXE
}
//*************************************
// 函数名称:uart_putc
// 函数功能:uart发送一字符
// 入口参数:无
// 出口参数:无
// 备注:
//***************************************
void uart_putc(unsigned char c)
{
	while(!((USART1->ISR)&(1<<7)));
	USART1->TDR=c;	
}
//*************************************
// 函数名称:uart_puts
// 函数功能:uart发送一字符串
// 入口参数:无
// 出口参数:无
// 备注:
//***************************************
void uart_puts(char *s )
{
	while (*s)
	uart_putc(*s++);
}

//*************************************
// 函数名称:uart_puts
// 函数功能:uart发送一字符串
// 入口参数:无
// 出口参数:无
// 备注:
//***************************************
void Init_Uart_SendDat(uint8 Invalue)
{
	
	Tx_Buf[0] = 0xc3 ;		
	Tx_Buf[1] = 0x00 ;		
	Tx_Buf[2] = 0x00 ;	
	Tx_Buf[3] = 0x00 ;		
	Tx_Buf[4] = 0x00 ;	
	Tx_Buf[5] = 0x00 ;		
	Tx_Buf[6] = Invalue ;	
	
	Tx_Buf[V_TX_NUM-1] = CalcateCheckSumUart(&Tx_Buf[0],uint8 DataLong)
{
	uint8 i ;
	uint8 Tmp=0 ;
	
	for(i=0;i<DataLong;i++)
	{
		Tmp += a[i] ;	
	}
	Tmp = (Tmp^0xff)+1 ;	
	
	return Tmp ;
}

#endif //Init_Uart_CALL





版权声明:本文为博主原创文章承接网站前端,未经博主允许不得转载.

点击次数:6399
作者:
web前端行业资讯
Web new NewsList
微软发布WindowsServerBuild17074更新 ,,2018年01月18日凭借一个AI小功能,这款Google应用冲上苹果AppStore榜首 ,,2018年01月18日百度数据可视化实验室正式成立,发布深度学习可视化平台VisualDL ,,2018年01月18日OpenAI开源最新工具包,模型增大10倍只需额外增加20%计算时间 ,,2018年01月18日百度手机输入法8.0正式发布:支持多人语音速记 ,,2018年01月18日CSDN宣布收购TinyMind团队并升级为AI社区 ,,2018年01月18日甲骨文发布补丁修复英特尔芯片漏洞造成的问题 ,,2018年01月18日权威!官方发布CPU熔断和幽灵漏洞防范指引:附补丁下载 ,,2018年01月18日Oracle宣布新的JavaChampions ,,2018年01月18日Fedora28壁纸征集活动现已开幕:将持续至2月13日 ,,2018年01月18日苹果WebKit团队发布Speedometer2.0网页响应测试工具 ,,2018年01月18日百度输入法8.0后天发布:全感官AI输入 ,,2018年01月18日腾讯和乐高合作:共同研发智能玩具、游戏 ,,2018年01月18日HomePod上市日益临近智能音箱市场吸引力越来越大 ,,2018年01月18日英特尔公布修补漏洞后PC性能数据:8代CPU影响最小 ,,2018年01月18日云存储公司Dropbox秘密提交IPO申请估值超百亿美元 ,,2018年01月18日iPod之父:防手机上瘾无技术难度苹果谷歌应承担责任 ,,2018年01月18日芯片不安全英特尔云客户考虑转用AMD等对手处理器 ,,2018年01月18日2018年Java展望 ,,2018年01月18日区块链有多火?快播流量矿石遭20多万人疯抢 ,,2018年01月18日Intel搞定神经拟态芯片:模拟人类大脑、自主学习 ,,2018年01月18日阿里巴巴发布IoTConnect开放连接协议,盼推动语音互动入口普及 ,,2018年01月18日区块链火了,全球大佬们怎么看? ,,2018年01月18日Facebook正测试新功能主推本地新闻资讯 ,,2018年01月18日在GooglePlay中发现使用Kotlin开发的安卓恶意软件 ,,2018年01月18日VisualStudio201715.6预览版本2,增加新功能 ,,2018年01月18日百度陆奇:AI是5G最好的加速器 ,,2018年01月18日PinterestCEO:不同于谷歌和Facebook,我们走了第三条路 ,,2018年01月18日腾讯加码区块链项目已悄然注册“以太锁”商标 ,,2018年01月18日3D打印脑组织?科学家正在向这一目标正在前进 ,,2018年01月18日urlrewrite(URL重写)配置技巧 【综合】2015年08月14日Keil5.15使用GCC编译器链接.a库文件【综合】2015年07月13日uva10048Audiophobiafloyd的变形 【移动开发】2015年05月20日CoreData常见问题解答 【编程语言】2015年05月05日关于链表问题的面试题目【微软面试100题第七十七题】【编程语言】2014年11月24日Ha0k0.3PHP网页木马修改版2014年01月29日HibernateORMv5.2.0发布 ,,2016年07月24日JavaScript格式字符串的应用2014年01月29日RotateList【编程语言】2015年02月03日修改xheditor表情图片路径为绝对路径 【互联网】2015年04月24日AndroidStudiodexDebug错误 【数据库】2015年04月17日高并发系统设计【编程语言】2015年08月14日项目管理和代码托管平台GitLabv8.9.0-rc3发布 ,,2016年07月24日SAP中ProductOrders(生产订单)相关函数BAPI 【数据库】2015年04月29日BZOJ1084SCOI2005最大子矩阵动态规划 【架构设计】2014年11月20日iOS开发小技巧之--WeakSelf宏的进化 【Web前端】2015年07月06日hdu5384AC自动机模板题,统计模式串在给定串中出现的个数【综合】2015年08月15日系统安全:谈Windows服务备份2014年01月29日【java多线程的优点】 【综合】2015年05月13日AndroidManifest.XML文件功能、元素、标签汇总 【编程语言】2015年01月12日css利用A标签的背景可能作出很有意思的效果2014年01月29日Atitit.字节数组转字符串 base64 base16 Quoted-printable 编码原理设计 attilax 总结【编程语言】2015年08月27日IntellijIDEAShortCutsKey 【编程语言】2014年11月14日阿里云发布了19款企业级云服务器,垂直场景呈现深度定制化趋势 ,,2017年08月10日重拾Android之界面控件和布局方式【编程语言】2015年03月27日史上最全github使用方法:github入门到精通 【架构设计】2015年04月27日安装PHP时出现MSVCR110.dll文件丢失问题解决 【编程语言】2014年11月04日web攻击方式和防御方法 【编程语言】2015年06月26日AutoLayout—实现等分【综合】2015年04月27日多种型号的ADSL路由设置方法图文教程2014年01月29日
我们保证
We guarantee
> psd效果文件手工切图,保证图片效果最好体积最小利于传输
> 100%手写的HTML(DIV+CSS)编码,绝对符合W3C标准
> 代码精简、css沉余量小、搜索引擎扫描迅速,网页打开快捷
> 应用Css Sprite能够减少HTTP请求数,提高网页性能
> 跨浏览器兼容(IE6、7、8、9,Firefox火狐,Chrome谷歌)