[APM32F4] 【APM32F411V Tiny Board测评】+体验随机数生成并用OLED显示

[复制链接]
1759|1
 楼主| stb988 发表于 2024-5-9 20:47 | 显示全部楼层 |阅读模式
#每日话题# #申请原创#      APM32F411这个单片机可以生成随机数,而且demo里自带,我这里就移植显示在OLED上,先在头文件中引入
  1. #include "apm32f4xx_rcm.h"
  2. #include "apm32f4xx_rng.h"
接下来,再引用初始化函数
  1. void RNG_Init(void)
  2. {
  3.     RCM_EnableAHB2PeriphClock(RCM_AHB2_PERIPH_RNG);
  4.     RNG_Enable();
  5. }
再在主函数中调用
  1. int main(void)
  2. {
  3.     uint32_t uRandomNumber = 0;
  4.     APM_DelayInit();
  5.     APM_TINY_LEDInit(LED2);
  6.     APM_TINY_COMInit(COM1,&usartConfigStruct);
  7.     /* RNG initialization */
  8.     RNG_Init();
  9.     /* Init delay function */
  10.     I2C_GPIOInit();
  11.     OLED_Init();

  12.     while (1)
  13.     {
  14.         OLED_ShowChinese(18,0,0,16,1);//
  15.         OLED_ShowChinese(38,0,1,16,1);//
  16.         OLED_ShowChinese(54,0,2,16,1);//
  17.         OLED_ShowChinese(72,0,3,16,1);//
  18.         OLED_ShowChinese(88,0,4,16,1);//
  19.       

  20. //       OLED_ShowString(8,16,(u8 *)"ZHONGJINGYUAN",16,1);


  21.          uRandomNumber =RNG_ReadRandomNumber();

  22.         snprintf(disbuf,sizeof(disbuf)," %08d",uRandomNumber);

  23.         OLED_ShowString(8,32,(u8 *)disbuf,16,1);


  24.         OLED_Refresh();
  25.                

  26.         Delay_ms(500);
  27.                        
  28.         APM_TINY_LEDToggle(LED2);

  29.     }
  30. }
最后显示效果如下图:
VID_20240509_203342.mp4_20240509_204120.gif


最后说说,这个开发板居然不能连接上Geehy Prog,而且也没有工作人员来解答,还有这个板载的DAPLINK上面的指示绿始终都是绿色的,在下载时也不会变灯,有可能这个是简化的daplink,还有就是sdk里的例程包都默认是apm32f407的,感觉软件支持工作做的并不理想。
lu50211 发表于 2024-5-10 08:12 | 显示全部楼层
是同系列的芯片,共用的。在设置里可以选为411。 1.png 3.png
您需要登录后才可以回帖 登录 | 注册

本版积分规则

54

主题

402

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部