STM32(2)——GPIO】的更多相关文章

对于初学者而言,最简单的是对芯片上的IO进行操作,我们学习ARM时候,第一个工程就是点亮LED,STM32F103ZET6通用输入输出接口(General-Purpose Inputs/Outputs),每个GPIO都可以由软件配置成输出(推免或开漏).输入(带或不带上拉或下拉)或复用的外设功能端口.多数GPIO引脚都与数字或模拟的复用外设共用.具体的细节请参考Datasheet. 回到MDK开发平台,现在要在main.c中加入相关代码了.代码清单如下: #include "stm32f10x_…
1. 串口的基本概念 在STM32的参考手册中,串口被描述成通用同步异步收发器(USART),它提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的外部设备之间进行全双工数据交换.USART利用分数波特率发生器提供宽范围的波特率选择.它支持同步单向通信和半双工单线通信,也支持LIN(局部互联网),智能卡协议和IrDA(红外数据组织)SIR ENDEC规范,以及调制解调器(CTS/RTS)操作.它还允许多处理器通信.还可以使用DMA方式,实现高速数据通信. USART通过3个引脚与其他设备连…
本文原创于http://www.cnblogs.com/humaoxiao,非法转载者请自重! 在我先前的博文⎣在Mac OS X中使用VIM开发STM32(1)⎤中,我们安装完成了MACVIM,这一节我们安装代码标签索引工具ctags,它一个最常用的功能就是"转到定义"了,查找某个变量的出处,查找它被引用的地方等等.当然它还可以与taglist等工具配合使用,获得更强大的功能,在这一篇文章中我们只介绍ctags的安装与使用. 二.下载安装ctags 在MAC OS X中,目录/usr…
简介: CAN是Controller Area Network,是 ISO 国际标准化的串行通信协议. CAN  控制器根据两根线上的电位差来判断总线电平.总线电平分为显性电平和隐性电平,二者必居其一.发送方通过使总线电平发生变化,将消息发送给接收方. STM32 自带的是 bxCAN,即基本扩展 CAN.它支持 CAN 协议 2.0A 和 2.0B.它的设计目标是,以最小的 CPU 负荷来高效处理大量收到的报文.它也支持报文发送的优先级要求(优先级特性可软件配置).对于安全紧要的应用,bxCA…
本章参考资料:<STM32F10X-中文参考手册>存储器和总线构架章节.GPIO 章节,<CM3 权威指南 CnR2>存储器系统章节. 位带简介 位操作就是可以单独的对一个比特位读和写,这个在 51 单片机中非常常见.51 单片机中通过关键字 sbit 来实现位定义,STM32 没有这样的关键字,而是通过访问位带别名区来实现. 在 STM32 中,有两个地方实现了位带,一个是 SRAM 区的最低 1MB 空间,令一个是外设区最低 1MB 空间.这两个 1MB 的空间除了可以像正常的…
参考资料: https://www.cnblogs.com/qsyll0916/p/6964638.html http://blog.csdn.net/zhangdaxia2/article/details/50783566 首先,先来看一下这个模块的基本功能和原理. HC-SR04超声波测距模块可提供2cm-400cm的非接触式距离感测功能,测距精度可达高到3mm:模块包括超声波发射器.接收器与控制电路.像智能小车的测距以及转向,或是一些项目中,常常会用到.智能小车测距可以及时发现前方的障碍物…
1.STM32的时钟系统 在STM32中,一共有5个时钟源,分别是HSI.HSE.LSI.LSE.PLL HSI是高速内部时钟,RC振荡器,频率为8MHz: HSE是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,频率范围是4MHz – 16MHz: LSI是低速内部时钟,RC振荡器,频率为40KHz: LSE是低速外部时钟,接频率为32.768KHz的石英晶体: PLL为锁相环倍频输出,严格的来说并不算一个独立的时钟源,PLL的输入可以接HSI/2.HSE或者HSE/2.倍频可选择为2…
7个寄存器 是R1-R16.(当然,里面有很多是分几个模式的,所以总共有37个)类似于单片机的R0-R7. GPXCON,GPXDAT等等是另外的寄存器,应该叫,特殊功能寄存器,类似于单片机的P0,P1,TCON,等等. GPXCON:是X管脚的控制寄存器,控制它们的模式,比如输出模式,输入模式……GPXDAT:是X管脚的数据寄存器,存储它们的数据, GPIO ,通用的输入输出,其引脚可供编程使用,对于简单的外部设备,比如控制一个LED 灯的亮灭,自然 只需要一位 信号就够了. 使用传统的 串行…
本文原创于http://www.cnblogs.com/humaoxiao,非法转载者请自重!       在上三篇文章中,我们基本搭建好了开发STM32的IDE环境,当然vim.ctags.taglist.winmanager的命令和用法太多,不可能全部列出,在这里只是给大家提供一种思路和方法,具体扩展功能参考相关插件的帮助文档就可以获得,当然选择自己最最常用的几个命令,操作熟练了,就足以进行开发调试了.今天这篇文章我们使用gdb进行STM32调试. (四)gdb调试STM32程序     我…
概述: Cortex-m0的integration_kit提供三个GPIO接口,其中GPIO0传输到外部供用户使用,为EXTGPIO:GPIO1是内核自己的信号,不能乱改,会崩掉:GPIO2是一些中断,这里没开中断,可以读写相应的寄存器. 1. 寄存器寻址,先看手册: 这里倒没什么特别,第10位为1正好对应地址0x400,为DIR寄存器,同理0x410对应中断寄存器. 对应硬件描述语言: // 本GPIO设备被选通.总线写.总线传输类型为连续或不连续时有效 wire write_trans =…