蓝桥杯嵌入式 国赛扩展板 CT117E-EX 学习笔记
蓝桥杯嵌入式国赛扩展板 CT117E-EX 学习笔记
CT117E-EX 扩展板笔记
数码管(74HC595)
博主参加国赛有点皮,准备的不够就参赛了,结果国赛没敲出来数码管实在有点可惜。望看到本文的朋友在准备国赛一定要把这个功能做到盲打出来,第十届国赛没提供数码管的驱动。
RCLK(R:存储寄存器读取)
- 上升沿 移位寄存器进入存储寄存器
- 下降沿 数据保持不变
SCK(S:送入595)
- 上升沿 数据寄存器数据移位。Q0–>Q1–>Q2–>Q3–>…–>Q7;
- 下降沿 移位寄存器数据不变
SER(数据脚)
- 串行数据输入端
1 |
|
数码管显示数组
1 |
|
1 |
|
ADC按键
ADC KEY 引脚
PA5 ADC_12_IN5
背下ADC按键区间
按键值
ADC值 | ADC按键区间 |
---|---|
0 | <100 |
200 | <400 |
600 | <800 |
1000 | <1200 |
1300-1400 | <1600 |
1700-1900 | <2000 |
2100-2400 | <2600 |
2800-3000 | <3200 |
DHT11模块
芯片性能
- 温度测量范围:0-50℃
- 湿度测量范围:20-90%RH
- 采样周期 :1S
数据格式
Byte0 | Byte1 | Byte2 | Byte3 | Byte4 |
---|---|---|---|---|
湿度整数数据 | 湿度小数数据 | 温度整数数据 | 温度小数数据 | 校验和 |
编程思路
- 主机输出
- 主机拉 低 至少 18ms
- 主机拉 高 20-40us
- 主机输入
- 主机等待信号线拉 低 (DHT11发送持续 40-50us 的 低 响应信号)
- 主机等待信号线拉 高 (DHT11发送持续 40-50us 的 高 拉高信号)
- for(){ //40bit数据 5Byte
- 主机等待数据线拉低 (数据Bit开始)
- 主机等待数据线拉高
- 主机延时 时间大于28us小于70us ( Type值 40us)
- 主机读取数据
- }
- 主机输出
- 主机拉高
技巧&TIP
- DHT11分辨率都是整数级别的读取小数的数据部分没有意义。(全为0)
- 读取间隔建议大于100ms(采样 1S 过高的读取频率没有意义)
- 在72MHz频率下 Delay_LCD 运行一次大约 375us
1 |
|
18B20模块
芯片性能
- ±0.5°C accuracy from -10°C to +85°C
- Can be powered from data line. Power supply range is 3.0V to 5.5V
- Converts 12-bit temperature to digital word in 750 ms (max.)
数据格式
数据格式
- 写Byte数据先写低位
- 读Byte数据先读出的是低位
- 读出来的温度先是 LSM 8bit 然后是 MSB 8bit
总线协议&时序
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-n4fqEHfa-1627893566676)(蓝桥杯嵌入式决赛笔记.assets/01-1557625836489.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MDCAsN9Z-1627893566679)(蓝桥杯嵌入式决赛笔记.assets/02.png)]
编程思路
第十届提供了底层接口,比赛会下面这些就好了
0xCC OW_SKIP_ROM
0x44 DS18B20_CONVERT
0xCC OW_SKIP_ROM
0xBE DS18B20_READ
LIS302DL
NULL
光敏 D&A
光敏D
- GPIOA_Pin_3
- GPIO_Mode_IPU
光敏A
AD通道号就是Pin号
- GPIOA_Pin_4
- ADC1
- ADC_Channel_4
电位器
省赛内容没什么好说的
NULL
PULS&PWM
比较捕获模式万能解题。如果题目不是要求同时采集CH1和CH2可以用PWM捕获模式挺好用的,改进一下可以不使用中断直接读取出占空比和频率,效率挺高。
PA1 TIM2_CH2
PA2 TIM2_CH3
PA6 TIM3_CH1
PA7 TIM3_CH2
界面颜色搭配
萝卜青菜各有所爱,好看就行了
1 |
|
蓝桥的其他文章与我个人敲的代码
省赛及国赛的赛题的实现代码可以在我的下载里面找到
蓝桥杯嵌入式 国赛扩展板 CT117E-EX 学习笔记
https://www.oikiou.top/2019/ea2a1972/