首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否类似于LPC1769/FreeRTOS中的shiftOut?

是否类似于LPC1769/FreeRTOS中的shiftOut?
EN

Stack Overflow用户
提问于 2013-05-11 03:22:49
回答 1查看 167关注 0票数 0

我正在尝试使用FreeRTOS从带有LPC1769板的视差SHT11模块读取数据。

我找到了这个例子http://wiring.org.co/learning/basics/humiditytemperaturesht11.html

我正在尝试连接到LPC1769

这是不是类似于shitOut函数?

我对mbed的了解很少,我应该写在什么针脚上?

代码语言:javascript
复制
LPC_GPIO0->?????

我读到过LPC_GPIOX->FIOPIN存储当前引脚值,在这里吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-11 04:00:13

抱歉..。

我刚刚找到了shiftOut()函数的一个实现:

代码语言:javascript
复制
void shiftOut(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, uint8_t val)
{
uint8_t i;
digitalWrite(clockPin, LOW);    
for (i = 0; i < 8; i++)  {
    if (bitOrder == LSBFIRST)
        digitalWrite(dataPin, !!(val & (1 << i)));
    else    
        digitalWrite(dataPin, !!(val & (1 << (7 - i))));
    digitalWrite(clockPin, HIGH);
    digitalWrite(clockPin, LOW);    
}
}

代码语言:javascript
复制
#define GPIO0_WRITE(Pin,Value)   if ( Value == 0 ) { LPC_GPIO0->FIOCLR|= ( 1 << Pin); } else { LPC_GPIO0->FIOSET |= ( 1 << Pin); }


GPIO0_WRITE(CLOCK_PIN, LOW);   
for (i = 0; i < 8; i++)
{
    GPIO0_WRITE(DATA_PIN, !!(CMD_TEMPERATURE & (1 << (7 - i))));

    GPIO0_WRITE(CLOCK_PIN,HIGH);
    GPIO0_WRITE(CLOCK_PIN,LOW);
}

欢迎提出任何建议。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16489431

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档