STM32F103学习记录(一).doc_第1页
STM32F103学习记录(一).doc_第2页
STM32F103学习记录(一).doc_第3页
STM32F103学习记录(一).doc_第4页
STM32F103学习记录(一).doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

STM32学习记录一、串口的问题: 问题:自己做STM32核心板的PCB,其中一块是以串口1连接max232。另一块是以串口2连接max232。但是在用mcuisp下载时读取器件信息,只有串口1的那块读得到,以串口2的读取不到。硬件检查了,没有问题。 回复:因为STM32默认的ISP.只有串口1能下载.一般说来串口1留做和电脑通信用.可以把一些模块如GSM接串口2,或者串口3啊. 另外:STM32的串口13在MDK里面定义为USART13.而4和5定义为UART4,5.除了这点改变,其他的没啥变的,直接修改即可。另外注意,串口25使用的是pclk1,为36M,而不是串口1的72M。二、GPIO口设置问题:1.在看到GPIO的配置时。浮空输入看的不明白,希望大家留下对其的理解。答:顾名思义,浮空就是浮在空中.也就是没有什么把他拉下来,也没有什么把它拉上去. 浮空最大的特点就是电压的不确定性,它可能是0V,也可能是VCC,还可能是介于两者之间的某个值(最有可能). 浮空一般用来做ADC输入用,这样可以减少上下拉电阻对结果的影响.2.浮空输入时能读引脚上的电平么?电平怎么确定?答:可以读,但是结果不正确的。没意义。3.那要是读管脚上的信息时,应该设置为上拉输入还是下拉输入呢?答:一般选择上拉.4.stm32普通的I/O接口是否需要接上拉或下拉电阻? 接了会更稳定一些吗?答:不需要的.尤其是做输出的时候. 做输入的时候,如果你喜欢,可以增加以下.5.STM32 IO口设置成输入模式的时候,好像可以设置上下拉,但是仔细看了数据手册,没有找到相关说明而原子例程,通过设置ODR寄存器来设置上下拉,ODR不是输出数据寄存器吗 怎么编程了上下拉设置了,而且数据手册上也没说啊 把原子按键初始化代码最后两句注释掉程序也按键检测一样的,说明后两句没用 void KEY_Init(void)RCC-APB2ENR|=1CRL&=0XFFFFFFF0;/PA0设置成输入08 KEY_UP GPIOA-CRL|=0X00000008; GPIOA-CRH&=0X0F0FFFFF;/PA13,15设置成输入 GPIOA-CRH|=0X80800000; GPIOA-ODR|=1ODR|=1ODR|=0ODR|=0ODR|=0ODR|=0ODR=1ODR|=1CRH&=0XFFF00FFF;/清掉这2个位原来的设置,同时也不影响其他位的设置 GPIOC-CRH|=0X00038000; /PC11输入,PC12输出GPIOC-ODR=1ODR=1APB2ENR|=1APB2ENR|=1CRH&=0XFFFFFFF0; GPIOA-CRH|=0X00000003;/PA8 推挽输出 GPIOA-ODR|=1CRL&=0XFFFFF0FF; GPIOD-CRL|=0X00000300;/PD.2推挽输出 GPIOD-ODR|=1APB2ENR|=1CRL&=0XFFFFFFF0;/PA0设置成输入 GPIOA-CRL|=0X00000008; GPIOA-CRH&=0X0F0FFFFF;/PA13,15设置成输入 GPIOA-CRH|=0X80800000; GPIOA-ODR|=1ODR|=1ODR|=1ODR相应位设置为0或1来设置为下拉输入还是上拉输入的。0000(0)模拟输入,通常可用在AD采样 0100(4)浮空输入,如果有外部的上拉或下拉,则可以用这个 1000(8)上/下拉输入,使能内部上/下拉结构,使端口在空闲情况下置为某种电平,具体是某种电平就由GPIOx-ODR来决定。置1则高电平,置0则低电平10.第二个按键输入实验1)GPIOA-CRL&=0XFFFFFFF0;/PA0设置成输入 2)GPIOA-CRL|=0X00000008; 3)GPIOA-CRH&=0X0F0FFFFF;/PA13,15设置成输入4)GPIOA-CRH|=0X80800000;5)GPIOA-ODR|=1ODR|=1CRH&=0X0F0FFFFF;/PA13,15设置成输入 注释掉,在板子上,运行的结果正确,但第一句注释掉,就有错误了,PA0端口没作用了。2,2)GPIOA-CRL|=0X00000008; 将8改为其他的数字0f,下载后有些结果和8时一样,有些不一样,为什么?3,第三四行,怎么将PA13,15设置成输入的,看了文档上92页类似的也没弄懂。4,GPIOA-ODR|=0ODR|=0CRL,GPIOX-CHL,高位和低位,手册里面讲解还是蛮详细的就是每个IO都有几种状态,是输入还是输出,是浮空还是推挽还是XX之类的,不同IO模式下,IO的驱动能力等等不一样。第一个实验对这个讲解很详细。问题4,在设置为输入状态下,还有个上拉下拉的问题,这个你没有接外设直接测试,结果可能是一样的。对于这个问题,请查看:关于STM32 GPIO输入上拉下拉的设置11. 我把PA5设置成为上拉输入,为什么读管脚的高低电平时是低电平GPIO_InitStructure.GPIO_Pin=GPIO_Pin_5; GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IPU; GPIO_Init(GPIOA,&GPIO_InitStructure); 设置PA5为上拉输入,其他的开GPIOA的时钟没有问题,答:如果你在外部接了其他东西,外部下拉的力量比内部上拉的力量大,当然就是低电平了.12:在复用JTAG管脚的时候注意,如果要使用复用管脚的IO口,先调用JTAG_Set函数.禁止JTAG13:在设置GPIO口管脚映射的时候注意需要映射的是out 还是in模式:如:PAout(13),PAin(6)3、 nrf905模块的问题:AM、MISO、CD、DR这些管脚要设为浮空输入,其他的推挽输出

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论