




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 目录 第一章 keil uVision4软件的安装1第二章 工程文件夹的建立1第三章 串口5第四章 按键7第五章 SPI9第六章 LCD12第七章 DMA14第八章 GPIO口19第一章 keil uVision4软件的安装1. 打开压缩包中的Keil ARMKil4 mdk460 。22. 安装完毕打开uVision4,点击复制右上角的CID再打开压缩包中KEIL_Lic4点击Generate生成许可号5将许可号复制到License Management6,注册成功。第二章 工程文件夹的建立1、 从固件库里面拷贝Libraries到我们的工程目录下.2、 再新建两个文件夹obj-存放工程生
2、成的文件 user-存放我们以后自己新建的.c .h文件.3、 进入user目录新建两个文件夹 inc-存放我们的.h文件 src-存放我们的.c文件.4、 去到固件库里面的project里面STM32F10x_StdPeriph_Template.5、 新建工程文件 STM32project.6、 选择工程存放位置.7、 选择CPU型号 STM32F103ZE.8、 是否选择KEIL带的启动文件.9、 修改工程文件.10、 修改文件夹名和新建文件夹StdDriver、user.11、 添加文件.3个文件12、 修改编译环境.13、 建main.c文件.#include stm32f10x.h
3、int main(void)while(1)编译文件14、工程文件说明.模块化编程-每一个模块独立建立.h-函数声明 变量声明(声明的函数/变量可以被其它.c文件调用) .c文件-函数的实现 变量定义。第三章 串口1、 通用同步异步收发器 USART Universal Synchronous/Asynchronous Receiver/Transmitter串口收发器可以配置为同步模式,也可以配置为异步模式但是一般使用的是异步模式,同步模式很少使用,大家有兴趣的话可以自己研究下也就是我们今天要讲的是通用异步收发器 UART UART:通用异步收发器 1 、串口:一个字节,一根数据线,数据一位
4、一位发送 并口:一个字节,8根数据线,字节的各个位同时发送2、 同步:有时钟线,根据时钟线上的时钟脉冲,主从设备来决定自己是收数据还是发数据3、上面讲了怎么传输数据,还有一个主从机数据的传输方向问题了 全双工:收发同时进行 就是现在电话机 手机 线:3条:发TX 收RX 共地GND 半双工(分时复用):收发同一时间只能有一个在进行 对讲机 线:2条:收发公用一条线 共地 单工:只能发/只能收 打印机 二、 串口驱动程序设计,实现电脑与开发板的通信我们使用串口1-UART11、串口的初始化初始化引脚-PA9,PA10 PA9-USART1_TX-推挽输出-2M 9600 115200 PA10-
5、USART1_RX-浮空输入-电平更加稳定初始化串口模块-设置数据帧和波特率,工作模式使能串口模块,使能发送,使能接收2、 串口发送函数While(USART-SR&(1DR =data;3、 串口接收函数signed char USART1_receive(void)u8 data;if(USART1-SR&(1DR;return data;return -1; 4、电脑串口助手与开发板的通信实现数据回显三、 用printf()从串口输出microlib 提供了一个有限的 stdio 子系统,它仅支持未缓冲的 stdin、stdout 和 stderr。 这样,即可使用 printf() 来
6、显示应用程序中的诊断消息。要使用高级 I/O 函数,您必须提供自己实现的以下基本函数,以便与您自己的 I/O 设备配合使用。fputc()为所有输出函数实现此基本函数。 例如,fprintf()、printf()、fwrite()、fputs()、puts()、putc() 和 putchar()。int fputc(int ch, FILE *f)UART2_SendByte(ch); return (ch);四、 串口重映射五、配置其它串口第四章 按键1、 弄清按键所接引脚的配置属性按键有两种状态:按下去和没按的状态。比如说: CPU通过检测引脚是高电平还是低电平,来判断按键是否按下去那么
7、引脚应该配置为什么属性?输入- 浮空输入-1,检测外部信号 2,引脚外面接有上拉电阻或下拉电阻按键引脚外面接有上拉电阻,选择浮空输入下拉输入-上拉输入-模拟输入-2、 程序如何判断外部IO口的高低电平 GPIOx-IDR &(1IDR &(1IDR&(1IDR)&(1IDR&(1n)=1;判断低电平:(GPIOx-IDR&(1IDR)&(1IDR&(1n)=0; 3、设计程序实现按键,按一次灯亮,再按一次灯灭 1、先把延时函数添加进去:添加delay_us delay_ms函数到工程 一定要:初始化延时函数 delay_init(72); delay_ms();最大只能延时:1864ms 2、
8、消抖 4、 状态机的运用定义一个静态变量,专门用来标示按键的状态为什么要定义一个静态变量来表示按键的状态?5、 位带操作像单片机一样操作引脚PAout(n);PAin(n);PBout(n);PBin(n);PXout(n);PXin(n);原理:Cortex-M3 的内部存储空间有2 个“位带区”,分别称为“ SRAM 位带区”和“外设存储位带区”,各自位于 SRAM 区和外设存储区各自最低的 1MBit 空间;并有对应的 2 个“位带别名区”,分别称为“ SRAM 位带别名区”和“外设存储位带别名区”,每个别名区大小为 32MBit。“位带”技术将两个“位带区”的每一位分别映射带对应的“位
9、带别名区”的一个“字”(即 32 位)的最低位上。这部分存储空间(32M)是通过映射技术“虚拟”出来的,STM32 片内的这部分地址空间并没有物理存储介质存在。第五章 SPI一、时序 1)时钟频率(波特率)-发送或者接收一个位要多长时间 我们M3最快18M SPI的输出时钟必须在从机的范围内 看时序图里面的时钟高低电平的最小时间 也就是找最小周期 要去有时间特性的时序图找。 如果找时钟频率找不到确定-给最小 tch-200ns tcl200ns T=400ns f=1/T -2.5M 2)时钟相位和时钟极性 时钟相位CPHA-上升沿/下降沿 0: 数据采样从第一个时钟边沿开始;1: 数据采样从
10、第二个时钟边沿开始。 通俗:就是上升沿采样数据还是下降沿采样数据 串口靠时间来数据。同步通信-采样数据就是什么时候去拿数据 时钟极性CPOL-高低电平 作用:决定第一个时钟边沿-空闲的时候的电平 时钟相位CPHA 和 时钟极性CPOL组合成多少种情况? 答:4种时序模式 1、空闲的时候时钟极性CPOL=0 ,时钟相位CPHA=0 上升沿采样数据 CPOL = 0 CPHA = 0 空闲的时候时钟线SCK为低电平上升沿采样数据 2、空闲的时候时钟极性CPOL=0 ,时钟相位CPHA=1 下降沿采样数据 CPOL = 0 CPHA = 1 空闲的时候时钟线SCK为低电平下降沿采样数据 3、空闲的时
11、候时钟极性CPOL=1 ,时钟相位CPHA=0 下降沿采样数据 CPOL = 1 CPHA = 0 空闲的时候时钟线SCK为高电平下降沿采样数据4、空闲的时候时钟极性CPOL=1 ,时钟相位CPHA=1 上升沿采样数据 CPOL = 1 CPHA = 0 空闲的时候时钟线SCK为高电平上升沿采样数据时序里面时钟极性和相位,必须和从机的一样一般:CPOL = 0 CPHA = 0 CPOL = 1 CPHA = 1 只有空闲状态不同-时钟线要求空闲的时候是低电平那就选CPOL = 0 CPHA = 0时钟线接下拉电阻时钟线要求空闲的时候是高电平那就选CPOL = 1 CPHA = 1时钟线接上拉
12、电阻二、 配置SPI: 1、初始化引脚 2、选择好SPI的时序 选择:时钟相位和极性 0 0 SPI_CR1 时钟相位-0位 写0 SPI2-CR1 &=(1AHBENR |=(1CCR |=(1CMAR=(u32)code;/外设的地址,外设的地址可以存储器的地址DMA1_Channel1-CPAR=(u32)buff;/外设的地址/通道优先级:高DMA1_Channel1-CCR &=(3CCR|=(2CNDTR =sizeof(buff);/存储器数据宽度:8位DMA1_Channel1-CCR &=(3CCR |=(0CCR &=(3CCR |=(0CCR |=(1CCR |=(1CCR &=(1CCR &=(1CCR &=(1CRL = GPIOA-CRL & 0XFF0FFFFFGPIOA-CRL = GPIOA-CRL | 0X00200000;GPIOA-CRL &=0XFF0FFFFF; /清零GPIOA-CRL | = 0X00200000; /设置0XFF0FFFFF = (0XF5*4); PA60X00200000
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 系统集成考试必考点试题及答案
- 2025企业与个人借款合同协议
- 财务信息化试题及答案
- 考生交流经验总结初级社会工作者试题及答案
- 2025华能霞浦核电开发有限公司核燃料组件制造车间零星工程项目施工合同
- 7年级童话考试题及答案
- 快餐餐饮考试题库及答案
- 2025政府安居工程拆迁安置房保障客商合同协议范本
- 河南维修电工试题及答案
- 2025年评测师考试知识要点试题及答案
- 2024国家能源集团宁夏煤业有限责任公司校园招聘笔试参考题库含答案解析
- 山东省烟草专卖局(公司)笔试试题2023
- 配电网居民客户端低电压治理方案探讨
- 医院保洁服务投标方案(技术方案)
- PLC基础与实训三菱FX2N(中职)全套教学课件
- (高清版)TDT 1042-2013 土地整治工程施工监理规范
- 头孢他啶在血液脑屏障中的分布及代谢
- 2024年江西赣州城投工程管理有限公司招聘笔试参考题库含答案解析
- 各大行业的分析
- 社区托管班方案
- 2023年湖北省武汉市部分地区中考语文模拟试卷汇编:实用类文本阅读
评论
0/150
提交评论