STM32学习


st意法半导体
m微控制器
32三十二位

一、STM32与ARM的关系
1.ARM做内核设计
内核:处理器、ARM11、Cortex-Mx/Ax、指令集、Thumb、Thumb-2

2.ST做IC设计/流片做芯片设计
芯片:内核、总线、外设

3.用户做嵌入式开发,做产品设计 软/硬件开发
产品:芯片(软件)、外围电路(硬件)

二、STM32命名规则 STM32F103ZET6
STM32产品
F产品类型(L超低功耗)
103特性(基础型芯片)
Z引脚数量144pin,C=48pin
8flash存储容量Kbytes,64KB E=512KB
T封装QFP
6温度范围=-40 to +85

三、STM32芯片资源
1.内核:32位Cortex-M3处理器,时钟高达72M
2.IO口:144引脚 112个IO,大部分IO都耐5V(模拟通道除外),支持调试:SWD和JTAG,SWD只要2根数据线。
3.存储器容量:512K FLASH,64K SRAM
4.时钟,复位和电源管理
5.低功耗
6.ADC
7.DAC
8.DMA
9.定时器
10.通信接口
IIC-2
USART-5
SPI-3
CAN-1
USB从机-1
SDIO

液晶模块的操作程序
sbit RS=P2^6;寄存器选择位
sbit RW=P2^5;读写选择位
sbit E=P2^7;使能信号位
sbit BF=P0^7;忙碌标志位

延时1ms
3j+2*i

函数功能:判断液晶模块的忙碌状态
返回值:result

bit BusyTest(void)
bit result;
rs=0; 根据规定,rs为低电平,rw为高电平,可以读状态
rw=1
e=1 e=1,才允许读写
nop() 空操作
nop()
nop()
nop() 空操作四个机器周期,给硬件反应时间
result=bf;将忙碌标志电平赋给result
e=0 将E恢复低电平
return result;

函数功能:将模式设置指令或显示地址写入液晶模块
入口参数:dictate
void WriteInstruction(unsigned char dictate)
while(busytest()==1);
rs=0 根据规定,RS和R/W同时为低电平时,可以写入指令
rw=0
e=0 e置低电平(根据表8-6,写指令时,E为高脉冲,就是让E从0到1发生正跳变,所以应先置0

nop()
nop() 空操作两个机器周期,给硬件反应时间
p0=dictate;将数据送入P0口,即写入指令或地址
nop()
nop()
nop()
nop()
nop() 空操作四个机器周期,给硬件反应时间
e=1; E置高电平
nop()
nop()
nop()
nop() 空操作四个机器周期,给硬件反应时间
E=0; 当E由高电平跳变成低电平时,液晶模块开始执行命令

函数功能:指定字符显示的实际地址
入口参数:x
void writeAddress(unsigned char x)
writeinstruction(x|0x80) 显示未知的确定方法规定为80H+地址码

函数功能:将数据(字符的标准ASCII码)写入液晶模块
入口参数:y(为字符常量)
void WriteData(unsigned char y)
while(BusyTest()==1);
RS=1; RS为高电平,RW为低电平时,可以写入数据
RW=0;
E=0; E置低电平(根据表8-6,写指令时,E为高脉冲,就是让E从0到1发生正跳变,所以应先置0)

P0=y; 将数据送入p0口,即将数据写入液晶模块
nop()
nop()
nop()
nop() 空操作四个机器周期,给硬件反应时间
E=1; E置高电平
nop()
nop()
nop()
nop()
E=0; 当E由高电

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值