查看: 1210|回复: 1

Blazar β-Board体验之让单片机实验底板上的两个 LED 与某两个按键的状态相一致

[复制链接]

该用户从未签到

发表于 2018-5-16 08:59:43 | 显示全部楼层 |阅读模式
分享到:
上次点亮led交替闪烁之后,又根据指导书进行了两个 LED 与某两个按键的状态相一致的调试。依然使用OPENSDA 调试器,查阅单片机核心板的电路原理图,任意选择两个按键。PTC6,PTC7,然后具体主函数参考实验指导书如下。具体效果如图

#include "derivative.h" /* include peripheral declarations */void delay(){        unsigned short i,j;        for(i=0;i<3000;i++)            for(j=0;j<200;j++)            asm("nop");                    }int main(){SIM_SCGC5|=0x0800;        //使能 PORTC 时钟PORTC_PCR0=0x0100;        //PTC0 设置为 GPIOPORTC_PCR4=0x0100;        //PTC4 设置为 GPIOPORTC_PCR6=0x0103;        //RIGHT 键对应引脚 PTC6 设为 GPIO,上拉PORTC_PCR7=0x0103;        //DOWN 键对应引脚 PTC7 设为 GPIO,上拉GPIOC_PDDR|=0x0011;        //两 LED 对应端口都设置为输出GPIOC_PDDR&= ~0x00C0;        //两按键 PTC6 和 PTC7 设置为输入GPIOC_PDOR&=~0x0011;        // PTC0 和 PTC4 赋 0,两个小灯全灭for(;;){//RIGHT 键按下之后为 0(低电平),亦即if(!(GPIOC_PDIR&0x8000))if((GPIOC_PDIR&0x0040)==0)         GPIOC_PDOR|=0x0010;elseGPIOC_PDOR&=~0x0010;//DOWN 按键按下之后为 0(低电平) if((GPIOC_PDIR&0x0080)==0) GPIOC_PDOR|=0x0001;elseGPIOC_PDOR&=~0x0001;}}
未操作时无led显示
按红色下方按键,led1亮

按红色左方按键,led2亮

同时按两个红色按键,led同时亮起。
回复

使用道具 举报

  • TA的每日心情
    难过
    2019-7-30 16:59
  • 签到天数: 10 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    发表于 2021-7-19 14:05:49 | 显示全部楼层
    这个板现在没有了?新的板好像更适合,淘宝搜索:blazar a
    https://item.taobao.com/item.htm ... p;abbucket=2#detail
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-4-16 20:00 , Processed in 0.130438 second(s), 19 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.