平时成绩:器件完整、教材整洁
挂:看视频、毁坏器件,吃东西
器件:
- USB线
- 核心板
- 烧写器
- 白色绑线、静电袋
差错:
- 设备管理是否出现 CC Debugger
- 烧写器上面的绿灯是否亮
- Project-option是否正确
第一课 2.27
General Device:
C:\Program Files (x86)\IAR Systems\Embedded Workbench 6.0 Evaluation\8051\config\devices\Texas Instruments
课堂练习
以下IO口的作用:
- P0.0-P0.7
- P1.0-P1.7
- P2.0-P2.4
课后问题
- BLE代表什么?
- 串口各种标准的差异?
- RS232/RS485差异?
- Dongle有什么作用?
BLE | Wifi | Zigbee | ||
---|---|---|---|---|
组网方式 | ||||
协议 | ||||
载波频率 | ||||
传输距离 | ||||
芯片(TI CCxxxx) |
第二课 2.28
课堂练习
- 两个LED灯,对应两个按键
课后练习
- Delayms() 如何实现延时 X ms?有没有误差?
- KeyScan() 实现的流程?
- 中断处理流程,开关,中断向量表(图文)
- SFR代表什么?
- SFR 语法
- SFRBIT语法
- Volatile 作用
- 代码的自动对齐方式?
- 如何多个文件共存一个项目?
第三课 3.6
课堂练习
2.4定时器
查询示LED灯
- LED1/LED2交替闪
- 2秒闪一次
中断LED灯
- LED1 1秒闪1次
- LED2 5秒闪1次
课堂练习
串口通讯1
- 波特率改为38400,奇校验,2个停止位
- 发送内容为“Hello BLE 学号 名字拼音”
课后练习
- 名词解析:波特率、校验位、数据位、停止位
- 上述名词所对应的寄存器设置
- 如何在main中将时钟频率设为32MHz
- 串口工作方式的对比:SPI、I2C、UART的区别
SPI | I2C | UART | ||
---|---|---|---|---|
同步or异步 | ||||
时钟信号 | ||||
多少根导线,以及每根线的作用 | ||||
速率 | ||||
应用场景 | ||||
优缺点 | ||||
工作模式 | ||||
... |
继续补充差异
第四课 3.7
课堂练习
串口通讯2: 发送+接受
将接收到的数据,在串口屏幕住手上显示两次
课后练习
参考: 芯片手册P69, 4.4
- 芯片上面有多少个时钟信号?
- 各个时钟信号,各有什么用途、优缺点?
- 各个时钟频率是如何设置的?有没有先后顺序?
- 频率是如何产生的?晶振和RC振荡器的公式是?
第五课 3.13
课堂练习
2.5.3 UART0控制LED
2.6 温度控制
a) 12位温度控制,改为10位温度的控制,结果会如何?同时显示出来
b) 1.5秒温度控制一次,同时显示12位与10位的采集结果
c) 矫正传感器,让传感器的输出在25-35之间
2.7.1 睡眠唤醒
a) 两个按钮都能唤醒
b) 红灯闪4下
课后练习
a) 温度的意义,温度与电压的对应关系?如何算算出来的?网上查资料,以及参考<<2540_datasheet.pdf>>
b) 采集温度的过程,采样所需要的时间? 不同分辨率情况下(10bit、12bit等)采样的最高理论频率是?
c) CC2540有哪些口可以实现AD转换?
低温 11.0 =》25.0(室温)
高温 13.2 =》35.1 (手)
第六课 3.14
课堂练习
2.7.2 睡眠唤醒
a) 绿灯3下<=>红灯3下,交替闪
2.8 看门狗
a) 看到不断重启的现象
3.3.1 串口发送
课后练习
- 继续检查AD转换
- 根据图3.12 BLE栈的工作流程,画出程序调用的流程图(函数/路径/作用)
第七课 3.20
AL: Abstract Layer
Source Insight经典教程
掌握Source Insight 的使用
课堂练习
3.3.1 串口发送
3.3.2 串口接收
a) 两个项目都要修改:SimpleBLEPeripheral & SimpleBLECentral
b) “BLE Perpheral” 是哪行代码打印出来的?
c) “Initialized” 是哪行代码打印出来的?
d) “Advertising” 是哪行代码打印出来的?
e) 在后面一行打印名字、学号
课后练习
- 为什么必须关闭流控制?
- 为什么要注释掉POWER_SAVING ?
- 为什么要加入 HAL_UART=TRUE ?
- 展示Central和Peripheral的结果,修改的地方
DB: 代表的是?
第八课 3.21
课堂练习
3.4 协议栈的按钮实验
a) 两个项目都要修改:SimpleBLEPeripheral & SimpleBLECentral
3.5 无线传输入门
a) 通过向Central 发送1/2/3/4/5控制连接(P174-177)
课后练习
- RegisterForKeys(), 如何注册事件?当按下按键时,如何能够调用到相关的函数?列出所有的调用流程。
第九课 3.27
3.6 实现上电自动连接
课堂练习
- 实现自动连接(按照书上代码)
- 假设Central搜索不到Peripheral,则间隔5秒再扫描,直至连接上;距离远了,两个设备断开连接;距离靠近,又能自动连接上
课后练习
- RSSI的含义,单位,dbm与db的区别
- Central和Peripheral如何读取到各自的MAC地址(代码)
- 连接过程的流程图(代码框架)
第十课 3.28
课堂练习
- 3.7 Profile简单介绍
- 3.8 simpleGATTProfile及Btool的使用
(a) 底板为CC2540EM(不是USB Dangle)
《TI_BLE_Vendor_Specific_HCI_Guid.pdf》 - 3.9 利用Profiles的特征值进行无线点灯
(a) SW1控制LED1的亮灭
(b) SW2控制LED2的亮灭
课后练习
以下定义的区别与联系,以及在代码中是如何实现的(数据结构/API):
- Profile
- UUID
- handle
- Characteristic Values
- GATT
- GAP
期末考试
设计一个实验,要求新意与复杂度,先后顺序(10分钟/组),在规定时间内做好 presentation和演示。
- 代码
a) 说明修改的部分
- 运行结果(多样化)
a) 指示灯
b) 串口助手
c) BTools - 文档
a) 详略得当
b) 结构清晰 - 可以选择自行购买传感器进行实验
网友评论