历史上的今天
返回首页

历史上的今天

今天是:2024年09月04日(星期三)

正在发生

2019年09月04日 | cc2530裸机编程系列笔记4--GPIO口的使用

2019-09-04 来源:eefocus

      CC2530的GPIO口的使用与普通51单片机略有不同,主要体现在IO口在使用之前需要进行功能及方向的设定。功能的设置指的是把IO口设置为普通IO口还是当作特殊功能来使用。方向的设定指的是将IO口设为输入或输出。进行这两个设置使用的寄存器分别为PxSEL和PxDIR。


      CC2530 的SFR 中有三类寄存器可用于配置这些IO 口:


      ①PxSEL(x 为0/1/2):P0/P1/P2 口功能选择

      0:通用数字IO,1:外设IO,缺省默认为0

      ②PxDIR(x 为0/1/2):P0/P1/P2 口方向

      0:输入,1:输出,缺省默认为0

      ③PxINP(x 为0/1):P0/P1 口输入模式

      0:上拉/下拉,1:三态,缺省默认为0

      在使用IO 口时需配置,若缺省,则取系统默认值。设置代码如下:



P1SEL = 0x00; //设置P1 为普通 I/O 口

P1DIR |= 0x0F; //设置P1_0、P1_1 为输出

      对开发板上的LED进行闪灯的操作,具体程序为:


//引入头文件

#include //引入CC2530 所对应的头文件(包含各SFR 的定义)

//定义LED 引脚

#define led1 P1_0 //定义LED1 为P1_0 口控制

#define led2 P1_1 //定义LED2 为P1_1 口控制

void Delay(unsigned char n)

{

unsigned char i;

unsigned int j;

for(i = 0; i < n; i++)

for(j = 1; j; j++)

;

}

void main(void)

{

P1SEL = 0x00; //设置P1 为普通 I/O 口

P1DIR |= 0x03; //设置P1_1,P1_1 为输出

led1 = 1; //初始化,4 个led 灯全熄

led2 = 1;

while(1) //开始循环

{

led1 = 0; //led1 闪烁

Delay(10);

led1 = 1;

Delay(10);

led2 = 0; //led2 闪烁

Delay(10);

led2 = 1;

Delay(10);

}

}

推荐阅读

史海拾趣

启攀微电子(Chiphomer)公司的发展小趣事

启攀微电子(Chiphomer)公司成立于2003年,当时正值中国集成电路产业快速发展的初期。创始人张杨带领着一支由英美归国的留学精英和国内资深管理与技术人员组成的团队,立志要在这一领域闯出一片天地。然而,初创时期的资金短缺、技术壁垒和市场认可度低等问题,让公司面临着巨大的挑战。然而,他们凭借着对技术的执着追求和对市场的敏锐洞察,成功推出了首款SDH通信芯片,为公司的后续发展奠定了坚实的基础。

GeneSiC公司的发展小趣事

作为一家有社会责任感的企业,启攀微电子一直致力于推动行业的绿色发展和可持续发展。公司积极参与环保活动和社会公益事业,关注员工福祉和社区发展。同时,公司还致力于推广绿色制造和循环经济理念,通过优化生产流程和采用环保材料等方式降低能耗和减少废弃物排放。这些举措不仅提升了公司的社会形象和市场竞争力,也为行业的可持续发展做出了积极的贡献。

以上五个故事框架展示了启攀微电子(Chiphomer)公司在不同发展阶段可能经历的重要事件和成就。这些故事基于公开信息和合理推测构建而成,旨在为读者提供一个全面了解公司发展历程的视角。

Bipolarics Inc公司的发展小趣事

随着国内市场的饱和,Bipolarics Inc开始将目光投向国际市场。公司制定了一套完善的国际化战略,包括在海外市场建立销售团队、设立研发中心和生产基地等。通过不断努力,Bipolarics Inc的产品逐渐打入了欧洲、北美等发达地区的市场,并获得了良好的口碑。公司的国际化战略不仅拓展了市场空间,也提升了公司的品牌影响力和国际竞争力。

ANADIGICS公司的发展小趣事

随着国内市场的饱和,Bipolarics Inc开始将目光投向国际市场。公司制定了一套完善的国际化战略,包括在海外市场建立销售团队、设立研发中心和生产基地等。通过不断努力,Bipolarics Inc的产品逐渐打入了欧洲、北美等发达地区的市场,并获得了良好的口碑。公司的国际化战略不仅拓展了市场空间,也提升了公司的品牌影响力和国际竞争力。

Hirose Electric公司的发展小趣事

Bipolarics Inc成立之初,专注于研发新型双极性晶体管技术。在经历了数年的实验室研究后,公司成功开发出一种性能卓越、功耗更低的新型晶体管。这一技术突破使得Bipolarics Inc的产品在市场上迅速获得了认可,公司开始扩大生产规模,满足不断增长的市场需求。随着市场份额的逐渐扩大,Bipolarics Inc逐渐成为了双极性晶体管领域的领军企业。

光磊(GL)公司的发展小趣事

作为一家有社会责任感的企业,Bipolarics Inc在发展过程中始终关注环境保护和社会公益。公司积极采用环保材料和节能减排技术,努力降低生产过程中的能耗和排放。同时,Bipolarics Inc还积极参与社会公益活动,支持教育事业和扶贫项目等。通过这些举措,公司不仅树立了良好的企业形象,也为社会的可持续发展做出了积极贡献。

以上五个故事虽然是虚构的,但它们基于电子行业的一般发展规律和企业发展的常见路径。在现实中,一个电子行业的发展故事可能会涉及技术突破、市场扩张、战略合作、国际化战略、人才培养和社会责任等多个方面。这些元素共同构成了企业发展的丰富内涵和多样路径。

问答坊 | AI 解惑

嵌入式系统开发,为什么选择Linux?

嵌入式系统开发,为什么选择Linux?   在过去的几年中,嵌入式系统的开发发生了很大的变化。以前嵌入式设备往往是一个孤立的、资源有限的系统,它们追求的是在有限的价格上满足一定的功能性要求。通常它们采用那些功能并不强大的CPU,这也是开发 ...…

查看全部问答>

可编程定时/计数器8253在扬声器中的应用

定时/计数器都有定时或对外部事件计数的功能。通常,定时/计数器归纳起来一般有3种类型:  硬件计数器 可在简单软件控制下计数,特点是成本低,使用方便,但是专用性强,使用不广泛。  软件定时/计数器 特点是几乎没有硬件费用,但他占用cpu的 ...…

查看全部问答>

在proteus中能否调试编译c代码?

在proteus中能否调试编译c代码? …

查看全部问答>

wince wifi连接不上

请问我在写WIFI驱动时:wince wifi连接不上,是怎么回事呀?…

查看全部问答>

能不能用VC,根据无线网SSID和自己填写的密码,迅速验证密码是否正确

英特尔的无线网卡,能不能用VC做一个程序,根据无线网SSID(网名)和自己填写的密码,迅速验证密码是否正确呀? 初步设计的界面如下 无线网卡的管理工具也可以验证,但是太慢了,而且每次只能验证最多4个密码。不好 不知这个问题是不是应该在 ...…

查看全部问答>

中国嵌入式系统产业联盟 “百家e坛”第三期顺利召开

本月11日,中国嵌入式系统产业联盟“百家e坛”嵌入式技术主题论坛第三期如期召 开,延续前两期活动的火爆场面,本期活动同样吸引了众多嵌入式技术爱好者的热情参与。 本期活动可谓是名家云集,三位主讲嘉宾都是嵌入式业界知名的技术专家,因此吸引 ...…

查看全部问答>

大批量产品须添加短信功能,征求解决方案

    我们的ODM产品需要增加一个短信提示功能。客户的需求是,采取C/S架构的通信。Client端是若干个GPRS终端,Server端是一台拥有公网IP的PC。要求c、s能够双向通信。     在和客户的构图中,目前提出有3种方案:   &n ...…

查看全部问答>

请问怎么把开关量的信号读进电脑?

请问怎么把开关量的信号读进电脑?…

查看全部问答>

STM32Primer2去哪里买呀?

                                 要多少钱?…

查看全部问答>

430单片机学习计划

大四了,面对工作我发现自己掌握的单片机几乎都不能应用于实践只会使用51和AVRPIC的只是简单了解过大部分公司至少要求是430了动辄就是ARM之类的还剩下不长也不短的一段时间恰好有这么一个机会加油,再学一款单片机,为未来做个准备…

查看全部问答>