0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【HarmonyOS HiSpark Wi-Fi IoT 套件试用连载】通过Ad采样读取光敏传感器结果

开发板试用精选 来源:开发板试用 作者:电子发烧友论坛 2022-10-31 15:10 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文来源电子发烧友社区,作者:jf_53933321, 帖子地址:https://bbs.elecfans.com/jishu_2289287_1_1.html


1. 光敏电阻介绍
通常,光敏电阻器都制成薄片结构,以便吸收更多的光能。当它受到光的照射时,半导体片(光敏层)内就激发出电子—空穴对,参与导电,使电路中电流增强。为了获得高的灵敏度,光敏电阻的电极常采用梳状图案,它是在一定的掩膜下向光电导薄膜上蒸镀金或铟等金属形的。用来检测有没有遮挡,比如门前有没有人来。
2. 板上资源

环境监测板上有一块光敏电阻,实物图和原理图如下图所示。
pYYBAGK2zPyAN4UiAABTbDrZwwI911.png poYBAGK2zVCAWE8KAAmxQ3P0k3g149.jpg
3. 代码逻辑
当光敏电阻被遮挡住时电阻变小,原理图中的Q2和Q4不导通,因此输出电位为5V高电平。
  1. /* get gpio5 Voltage */
  2. void GetGpio5Voltage(const char *param)
  3. {
  4. unsigned short data = 0;
  5. unsigned short vlt = 0;
  6. float voltage;
  7. float vltMax = 0;
  8. float vltMin = VLT_MIN;
  9. hi_unref_param(param);
  10. memset_s(g_gpio5AdcBuf, sizeof(g_gpio5AdcBuf), 0x0, sizeof(g_gpio5AdcBuf));
  11. for (int i = 0; i < ADC_TEST_LENGTH; i++) {
  12. // ADC_Channal_2自动识别模式CNcomment:4次平均算法模式 CNend
  13. unsigned int ret = AdcRead(IOT_ADC_CHANNEL_2, &data,
  14. IOT_ADC_EQU_MODEL_4, IOT_ADC_CUR_BAIS_DEFAULT, 0xF0);
  15. if (ret != HI_ERR_SUCCESS) {
  16. printf("ADC Read Failn");
  17. returnHI_NULL;
  18. }
  19. g_gpio5AdcBuf[i] = data;
  20. }
  21. for (int i = 0; i < ADC_TEST_LENGTH; i++) {
  22. vlt = g_gpio5AdcBuf[i];
  23. voltage = (float)vlt * VOLTAGE_1_8_V *
  24. VOLTAGE_4_tiMES / ADC_CHANNAL_RANGE; /* vlt * 1.8* 4 / 4096.0为将码字转换为电压 */
  25. vltMax = (voltage > vltMax) ? voltage : vltMax;
  26. vltMin = (voltage < vltMin) ? voltage : vltMin;
  27. }
  28. if (vltMax > VOLTAGE_0_6_V && vltMax < VOLTAGE_1_V) { /* 电压最大值大于0.6小于1.0 */
  29. GpioKey1IsRFuncMode();
  30. } else if (vltMax > VOLTAGE_1_V && vltMax < VOLTAGE_1_5_V) { /* 电压最大值大于1.0小于1.5 */
  31. GpioKey2IsrFuncType();
  32. } else if (vltMax < VOLTAGE_0_6_V) { /* 电压最大值小于0.6 */
  33. printf("gpio9_LED_light:vltMax=%0.2f, vltMin=%0.2frn", vltMax, vltMin);
  34. Gpio9LedLightFunc();
  35. }
  36. printf("key_5:vltMax=%0.2f, vltMin=%0.2frn", vltMax, vltMin);
  37. }
复制代码
其中调用了AdcRead方法,定义如下。
  1. unsigned int AdcRead(IotAdcChannelIndex channel, unsigned const short *data, IotAdcEquModelSel equModel,
  2. IotAdcCurBais curBais, unsigned const short rstCnt)
  3. {
  4. return hi_adc_read((hi_adc_channel_index)channel, (hi_u16*)data, (hi_adc_equ_model_sel)equModel,
  5. (hi_adc_cur_bais)curBais, (hi_u16)rstCnt);
  6. }
复制代码

4. 实物演示
当光敏电阻被遮挡了,则led灯熄灭,否则led等亮起。如下视频。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • wi-fi
    +关注

    关注

    15

    文章

    2379

    浏览量

    128890
  • HarmonyOS
    +关注

    关注

    80

    文章

    2146

    浏览量

    35567
  • HiSpark
    +关注

    关注

    1

    文章

    156

    浏览量

    7684
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    浅谈Wi-Fi 6E与Wi-Fi 7的关键器件——BAW滤波新技术

    ,美国联邦通信委员会(FCC)投票通过将6GHz频谱划为免许可频段供Wi-Fi使用,这标志着Wi-Fi正式进入“三频”时代——除Wi-Fi 6及前代技术使用的2.4GHz和5GHz频段
    发表于 09-19 18:29 1319次阅读
    浅谈<b class='flag-5'>Wi-Fi</b> 6E与<b class='flag-5'>Wi-Fi</b> 7的关键器件——BAW滤波<b class='flag-5'>器</b>新技术

    如何更新 NuMaker IoT 板上的 Wi-Fi 模块固件?

    更新 NuMaker IoT 板上的 Wi-Fi 模块固件
    发表于 09-04 08:28

    基于 SSID 的 Wi-Fi 定位:与其他定位服务的性能比较

    是一种著名的无线网络技术,用于设备的局域网和互联网接入。Wi-Fi 通过 Wi-Fi 网络为家庭、办公室和学校等环境提供便捷的无线互联网接入服务。 Wi-Fi 定位是一种地理定位功能
    发表于 08-31 21:01

    摩尔斯微电子携手Airfide在日本COMNEXT展会推出Wi-Fi HaLow占用传感器

    ,与Airfide Networks合作推出的下一代微移动占用传感器AFN6843正式全面上市,并强化Wi-Fi HaLow连接功能。此次发布于日本下一代通信技术博览会(COMNEXT)期间举行,此前该
    的头像 发表于 08-01 10:00 1.7w次阅读

    Wi-Fi 8:开启极高可靠性 (UHR) 连接的新纪元——1

    2023年11月成立,将持续致力于推动802.11bn的标准化进程,直至符合Wi-Fi 8标准且通过完整认证的产品问世。 表1. Wi-Fi 技术的演进 图2. IEEE 802.11be
    发表于 06-13 11:09

    ‌迅通PTR7002 Wi-Fi 6模块技术解析

    延长至18个月以上。 ‌典型技术应用场景‌ ‌工业传感器网络‌ 通过-40℃宽温域支持与抗信道干扰算法,实现高密度部署下的可靠数据传输(如RS485转Wi-Fi网关)。 ‌医疗监测设备‌ 利用硬件级
    发表于 06-10 10:38

    [CYW4373] BT device_id正常,Wi-Fi device_id失败的原因?

    这是 Liam,在 WPG(IFX、KR disty)担任 FAE。我们的客户对 CYW4373 BT/Wi-Fi 检测问题有疑问。 1)问题 我们客户的系统通过 USB 集线器连接
    发表于 06-05 06:07

    基于SiWG917Y的无电池Wi-Fi 6传感器

    本开发视频将帮助您快速了解Silicon Labs(芯科科技)与合作伙伴Sigma Connectivity协力打造的一款无电池Wi-Fi 6传感器设备。该参考设计中的开发板基于高能效
    的头像 发表于 04-19 15:46 1207次阅读

    基于 Wi-Fi 的定位服务

    GNSS 的低精度模式也会比 Wi-Fi 和蜂窝定位服务提供更好的定位精度,因此在测量中使用了低精度模式,我们可以看到 GNSS 与其他定位服务 “最接近 ”的功耗差异。结果确实证明了这一假设
    发表于 04-17 15:16

    nRF Cloud Wi-Fi 定位服务

    、Predictive-GPS、Single-Cell、Multi-Cell 和 Wi-Fi 定位。通过利用 nRF Cloud 的优化定位算法,基于 Nordic SoC 和 模组的产品可在定位用例
    发表于 04-17 15:07

    Wi-Fi 定位服务

    Wi-Fi 是一种著名的无线网络技术,用于设备的局域网和互联网接入。Wi-Fi 通过 Wi-Fi 网络为家庭、办公室和学校等环境提供便捷的无线互联网接入服务。
    发表于 04-17 15:01

    还不知道Nordic 有Wi-Fi 6+BLE组合?

    芯片nRF7002和高性能双核处理芯片nRF5340设计。它不仅支持Wi-Fi 6功能,还支持BLE模式,能够实现无缝的蓝牙和Wi-Fi连接。 二、技术亮点 1、 低功耗设计:这对于需要长时间
    发表于 03-12 15:20

    华为海思正式进入Wi-Fi FEM赛道?

    大家都知道了,2018年11 月离开锐迪科(RDA),前往福建晋江创立三伍微,专注于Wi-Fi射频前端芯片,从路由Wi-Fi FEM,到手机Wi-Fi FEM,再到
    发表于 12-11 17:42

    摩尔斯微电子发布Wi-Fi HaLow评估套件,加速物联网开发

    开发的得力助手。 该套件搭载了摩尔斯微电子的MM6108 Wi-Fi HaLow低能耗SoC、STM32U585低功耗微控制
    的头像 发表于 12-11 13:40 1052次阅读

    Wi-Fi 4到Wi-Fi 7:网速飙升40倍的无线革命

    1 Wi-Fi技术的快速发展 每一代新的Wi-Fi协议发布,都会带来更高的无线速率。   从Wi-Fi 4到Wi-Fi 7:无线网络技术显著提升,实现了网速的巨大飞跃。    
    的头像 发表于 12-09 10:10 1604次阅读
    从<b class='flag-5'>Wi-Fi</b> 4到<b class='flag-5'>Wi-Fi</b> 7:网速飙升40倍的无线革命