打印
[应用相关]

STM32 OLED程序

[复制链接]
1499|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Mozarts|  楼主 | 2016-8-31 19:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这个是STM32和OLED的程序,借助了原子的寄存器文件。可显示1206 1608 和3216大小的字符。实测可用

本实验将实现如下功能:通过MiniSTM32开发板的OLED接口,控制ALINETEK OLED模块显示ASCII字符。

注意:
1,做此实验需要购买ALIENTEK OLED模块才可以.
2,本代码可以SWD下载仿真.



OLED32-16程序.zip

432.97 KB

沙发
feiqi1| | 2016-8-31 19:32 | 只看该作者
进来看看,感觉不错

使用特权

评论回复
板凳
androidbus| | 2016-8-31 19:36 | 只看该作者
void __BASEPRICONFIG(u32 NewPriority);
u32 __GetBASEPRI(void);
u16 __REV_HalfWord(u16 Data);
u32 __REV_Word(u32 Data);

使用特权

评论回复
地板
litengg| | 2016-8-31 19:44 | 只看该作者
void delay_ms(u16 nms)
{                                     
        u32 temp;                  
        SysTick->LOAD=(u32)nms*fac_ms;//时间加载(SysTick->LOAD为24bit)
        SysTick->VAL =0x00;           //清空计数器
        SysTick->CTRL=0x01 ;          //开始倒数  
        do
        {
                temp=SysTick->CTRL;
        }
        while(temp&0x01&&!(temp&(1<<16)));//等待时间到达   
        SysTick->CTRL=0x00;       //关闭计数器
        SysTick->VAL =0X00;       //清空计数器                      
}   

使用特权

评论回复
5
qiangweii| | 2016-8-31 20:03 | 只看该作者
//nus为要延时的us数.                                                                                      
void delay_us(u32 nus)
{               
        u32 temp;                     
        SysTick->LOAD=nus*fac_us; //时间加载                           
        SysTick->VAL=0x00;        //清空计数器
        SysTick->CTRL=0x01 ;      //开始倒数          
        do
        {
                temp=SysTick->CTRL;
        }
        while(temp&0x01&&!(temp&(1<<16)));//等待时间到达   
        SysTick->CTRL=0x00;       //关闭计数器
        SysTick->VAL =0X00;       //清空计数器         
}

使用特权

评论回复
6
shashaa| | 2016-8-31 20:43 | 只看该作者
Mini STM32开发板
使用SysTick的普通计数模式对延迟进行管理

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

70

主题

1320

帖子

0

粉丝