我的是2G的卡,为什么读到的DeviceSize是3799Mb?
ST官方的部分程序是如下:
/* Byte 6 */
tmp = (u8)((CSD_Tab[1] & 0x0000FF00) >> 8);
cardinfo->SD_csd.PartBlockRead = (tmp & 0x80) >> 7;
cardinfo->SD_csd.WrBlockMisalign = (tmp & 0x40) >> 6;
cardinfo->SD_csd.RdBlockMisalign = (tmp & 0x20) >> 5;
cardinfo->SD_csd.DSRImpl = (tmp & 0x10) >> 4;
cardinfo->SD_csd.Reserved2 = 0; /* Reserved */
cardinfo->SD_csd.DeviceSize = (tmp & 0x03) << 10;
/* Byte 7 */
tmp = (u8)(CSD_Tab[1] & 0x000000FF);
cardinfo->SD_csd.DeviceSize |= (tmp) << 2;
/* Byte 8 */
tmp = (u8)((CSD_Tab[2] & 0xFF000000) >> 24);
cardinfo->SD_csd.DeviceSize |= (tmp & 0xC0) >> 6;
cardinfo->SD_csd.MaxRdCurrentVDDMin = (tmp & 0x38) >> 3;
cardinfo->SD_csd.MaxRdCurrentVDDMax = (tmp & 0x07);
搞不懂这三条红色标出的语句。
本程序共创建了6个任务:
(1) u/COS-II Idle任务,这是由操作系统创建的空闲任务,优先级最低
(2) u/COS-II Stat任务,这是由操作系统创建的统计任务,统计CPU运行时间、CPU占用率等
(3) u/COS-II Tmr任务,这是由操作系统创建的定时器任务,为应用程序提供软件定时器,未用
(4) AppTaskStart任务,这是由用户创建的启动任务,完成如下工作:
(a) 初始化BSP
(b) 创建1个邮箱AppUserIFMbox
(c) 创建2个任务,1个是用户界面任务AppTaskUserIF,1个是按键检测任务AppTaskKbd
(d) 之后控制LED1指示灯按照100ms的周期闪烁
(5) AppTaskKbd任务,这是由AppTaskStart创建的按键检测任务
按键检测任务AppTaskKbd实时检测USER键和TAMPER键的状态,当有键按下时,则向邮箱AppUserIFMbox
发送一条消息,消息内容为按键码变量的指针。
(6) AppTaskUserIF任务,这是由AppTaskStart创建的用户界面任务
户界面任务AppTaskUserIF等待邮箱中的消息,如果USER键按下的消息则打印u/COS-II系统信息,如果
收到TAMPER键按下则打印所有的任务名称和任务优先级;如果没有收到任何信息则打印一个旋转的字符和
CPU运行时间(单位为1个滴答)。
将开发板的COM1串口用一根直连串口线连接到计算机的RS232串口或者用USB转RS232串口线连接到计算机USB口
- 计算机上运行超级终端软件(windows开始菜单-附件-通信-超级终端)或者串口工具软件SecureCRT
注意:其它一些串口助手之类的软件不支持控制指令,将导致用户看不到字符旋转效果
- 程序运行后,串口软件的窗口将显示一个旋转的字符和动态的CPU运行时间,刷新周期为100ms
- 当按下USER键时,串口软件的窗口将显示u/COS-II系统信息,如下 :
Micrium uC/OS-II
ST STM32 (Cortex-M3)
uC/OS-II : V2.86
TickRate : 1000
CPU Usage : 00%
CPU Speed : 72 MHz
#Ticks : 113
#CtxSw : 9
- 当按下TAMPER键时,串口软件的窗口将显示u/COS-II系统所有的任务名称和对应的任务优先级,如下:
Micrium uC/OS-II
ST STM32 (Cortex-M3)
Prio Used Free Per Taskname
31 68 444 13% uC/OS-II Idle
30 84 428 16% uC/OS-II Stat
3 152 1896 07% Start Task
12 248 776 24% Keyboard
4 124 388 24% User I/F
RT-Thread RTOS是一款来自中国的开源实时操作系统,由国内一些专业开发人员开发、维护
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
vscode+cmake搭建雅特力AT32L021开发环境被打赏30分 | |
【换取逻辑分析仪】自制底板并驱动ArduinoNanoRP2040ConnectLCD扩展板被打赏47分 | |
【分享评测,赢取加热台】RISC-V GCC 内嵌汇编使用被打赏38分 | |
【换取逻辑分析仪】-基于ADI单片机MAX78000的简易MP3音乐播放器被打赏48分 | |
我想要一部加热台+树莓派PICO驱动AHT10被打赏38分 | |
【换取逻辑分析仪】-硬件SPI驱动OLED屏幕被打赏36分 | |
换逻辑分析仪+上下拉与多路选择器被打赏29分 | |
Let'sdo第3期任务合集被打赏50分 | |
换逻辑分析仪+Verilog三态门被打赏27分 | |
换逻辑分析仪+Verilog多输出门被打赏24分 |