|
[STM32F401-DISCO开发板]实验二、驱显黑白LCD_6903,串口调试 [STM32F401-DISCO开发板]实验三、2路ADC采样+2路PWM输出实验 80元在咸鱼买到一块STM32F401 DISCO开发板,由于板上资源比较丰富因此稍贵点也认了。板上带有一片LSM303DLHC——数字3轴加速度+数字3轴磁场传感器,这是一个不错的传感器;带有一片L3GD20——数字3轴加速度计,有点重复,但可以互相验证;带有一片CS43L22——数字语音麦克风以及一片MP45DT02音乐数字D类放大输出;除此之外还有OTG USB一路输出。 首先是点亮LED。次试验采用mbed工程,在ARMmbed官网可以下载到相关的IAR或KEIL工程,直接采用设置LED了。在做点亮LED时,板子的资料还没有找到,但下载了芯片资料,对应此开发的器件,找到可控LED6个,编号为LED3~LED8,对应的芯片的引脚为D12~15,PD_5,PA_9,按键PA_0。 首先修改PinNames.h文档,将PD_xx和PE_xx增加、之后更改LED引脚名对应D12_15,PD_5,PA_9,按键PA_0。 在main.cpp文件头定义引脚名: //Definitions DigitalOut led0(PD_12); DigitalOut led1(PD_13); DigitalOut led2(PD_14); DigitalOut led3(PD_15); DigitalOut led4(PD_5); DigitalOut led5(PA_9); DigitalIn key(PA_0); 定义变量: float tt=0.8; 定义函数: void ledTest(int chi){ switch(chi){ case 0:led0=1;led5=0;break; case 1:led0=0;led1=1;break; case 2:led1=0;led2=1;break; case 3:led2=0;led3=1;break; case 4:led3=0;led4=0;break; case 5:led4=1;led5=1;break; } } 主函数main: int main(){ int i; led4=1;//这个LED逻辑与其他的LED相反——0为亮,1为暗 while(1){ for(i=0;i<6;i++){ if(key==0)tt =0.8;else tt=0.2;//案件按下LEDs亮0.2秒,松开亮0.8秒 ledTest(i);wait(tt); } } } 编译下载后结果见动画11-轮显LED3~8。 |
11
【福利三:雨露均沾·逢7狂欢】之四:用一个定时器同步另外两个定时器输出PWM
【逢7发帖赢大礼】STM32开发之WIFI实时时钟
【逢7发帖赢大礼】STM32开发之指纹识别!
【逢7发帖赢大礼】STM32开发之环境空气质量监测
【逢7发帖赢大礼】STM32开发之人体实时运动信息监测!
【逢7发帖赢大礼】STM32开发之IC门禁卡UID读取方法!
【逢7发帖赢大礼】全网最简单的Arduino_STM32开发环境搭建教程!
STM32F4中文用户手册
STM32F400、STM32F402 Cortex-M4超值单片机
SPI 高温读错最后一位?STM32F42xx 官方根治方案
微信公众号
手机版
谢谢
他要首次mouser,我已把我能用的都用了,买的其他的板子。
您好!mbed工程自己写的代码。mbed非常简单,每个头文件都有应用实例,照抄就行了。谢谢
401——在鱼塘花80大洋买的,我没有407 的板子。实际上相同的板子在ST非常多,像NUCLEO64 或144外观几乎一样。谢谢
有一块STM32F407-Disco 跟你这个板子一模一样。就是主控芯片不一样
Nucleo相似的很多,但在Discover系列相似的不多
如果差不多,较多见的是引脚不一样,存储大小不同,乳沟都差不多,代码应该可以搬来照用的。
如果差不多,较多见的是引脚不一样,存储大小不同,如果都差不多,代码应该可以搬来照用的。