stm8自学l学习笔记.doc

stm8自学l学习笔记.doc

ID:55118686

大小:993.30 KB

页数:11页

时间:2020-04-27

stm8自学l学习笔记.doc_第1页
stm8自学l学习笔记.doc_第2页
stm8自学l学习笔记.doc_第3页
stm8自学l学习笔记.doc_第4页
stm8自学l学习笔记.doc_第5页
stm8自学l学习笔记.doc_第6页
stm8自学l学习笔记.doc_第7页
stm8自学l学习笔记.doc_第8页
stm8自学l学习笔记.doc_第9页
stm8自学l学习笔记.doc_第10页
资源描述:

《stm8自学l学习笔记.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、#errordirective:"UnsupportedCompiler!"STM8编译错误解决方法  STM8的库使用很方便,不过初学者下载ST官方的库可能会遇到下面的问题。原因是因为STM8S的官方库文件发布时,IAREWSTM8还没有出来,所以在官里面IAR未能被支持,最好是采用IAR自带的头文件,如下图所示:    IAR自带的头文件目录,请以你自己的安装目录下查时钟控制STM8的钟控制器功能强大而且灵活易。现以STM8L101xx单片机的时钟树为例,时钟树如下图所示:HSI高速接口时钟源LSI低速接口时钟源从时钟树来看,fC

2、PU的时钟来源是fMASTER时钟;fMASTER的时钟源有三个可以选择:fHSI。fHSI来自于内部的时钟;fHSIDIV来自于内部16MHzRC的时钟源;fLSI来自于内部38KHzRC时钟源。TIMER2TIM时基单元,如下图所示:计数器使用内部时钟(fMASTER),由CK_PSC提供,并经过预分频器分频产生计数器时钟CK_CNT。计数器时钟频率的计算公式:fCK_CNT=fCK_PSC/2(PSCR[2:0])中断向量表串口uart学习STM8L101f3p6有一个串口如图本历程基于库操作不讨论具体寄存器操作有兴趣的同学可以

3、自行参考编程手册下面看一下手册的了解一下特点本人英语是个小白只可意会不可言传了内部结构了由于是基于库函数的所以不做寄存器的分析了库函数的好处就是可以在不了解单片机寄存器的前提下可以快速开发应用下面举个例子波特率96008位字长停止位一位无校验串口模式为收发模式查询发送中断接收在初始化串口之前应该先初始化串口对应的IO口由手册可知串口对应的IO为PC2(USART_RX)和PC3(USART_TX)。首先宏定义下IO方便理解和配置#defineTXD_GPIO_PORTGPIOC#defineRXD_GPIO_PORTGPIOC#def

4、ineTXD_GPIO_PINSGPIO_Pin_3#defineRXD_GPIO_PINSGPIO_Pin_2初始化IOTxD配置成输出上拉高速模式RxD配置成输入上拉无中断模式GPIO_Init(TXD_GPIO_PORT,TXD_GPIO_PINS,GPIO_Mode_Out_PP_High_Fast);GPIO_Init(RXD_GPIO_PORT,RXD_GPIO_PINS,GPIO_Mode_In_PU_No_IT);接下来打开串口模块时钟(之前就是忘配置这个功能所以一直不好使)CLK_PeripheralClockCon

5、fig(CLK_Peripheral_USART,ENABLE);配置串口详细的功能USART_Init((u32)9600,USART_WordLength_8D,USART_StopBits_1,USART_Parity_No,(USART_Mode_TypeDef)(USART_Mode_Rx

6、USART_Mode_Tx));开启接收中断USART_ITConfig(USART_IT_RXNE,ENABLE);//开启接收中断打开串口USART_Cmd(ENABLE);最后在开启总中断就可以啦enableInterrupts()

7、;/*开启总中断*/发个数据UART_SendString("ThisisaUARTDemor");哈哈好使下面是完整的功能函数/********************************************************************************名称:Uart_Init*功能:UART2初始化操作*形参:无*返回:无*说明:无******************************************************************************/vo

8、idUart_Init(void){GPIO_Init(TXD_GPIO_PORT,TXD_GPIO_PINS,GPIO_Mode_Out_PP_Low_Fast);GPIO_Init(RXD_GPIO_PORT,RXD_GPIO_PINS,GPIO_Mode_In_PU_No_IT);//GPIO_ExternalPullUpConfig(GPIOC,GPIO_Pin_3

9、GPIO_Pin_4,ENABLE);CLK_PeripheralClockConfig(CLK_Peripheral_USART,ENABLE);USART_D

10、eInit();/*将寄存器的值复位*//**将UART2配置为:*波特率=9600*数据位=8*1位停止位*无校验位*使能接收和发送*/USART_Init((u32)9600,USART_WordLength_8D,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。