打印
[综合信息]

HC32L130J8TA红外测试(附电路图、程序)

[复制链接]
1465|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 chenxiaolang 于 2020-10-30 16:11 编辑

  1、华大低功耗HC32L130J8TA系列有管脚可以输出38KHz PWM,用于红外调制,如下图所示

2、红外电路如下(完整原理图请参看附件pdf),接收部分用了两级三极管,后来证明没必要,红外接收管Pin3加一颗上拉连到MCU上即可,收发没问题




3、PCBA如下,由于只是测试板,做的比较宽松,也没特别注意布局

4、程序架构(完整工程请参看附件)


5、38K输出配置,这一块规格书提供的材料有点简单,我也没整特别明白,现在调制信号输出是38.4KHz(库函数里没找到38K的选项)



6、测试也比较简单,检测按键,发出一串数据,可以同一块板收,再用另一个串口发出到PC端




593085f9bc663af83d.png (32.67 KB )

593085f9bc663af83d.png

HC32L130J8TA_GPIO.rar

5.29 MB

HC32L130J8TA原理图.pdf

391.6 KB

使用特权

评论回复
沙发
正圆椭圆| | 2020-10-30 23:01 | 只看该作者
设计的很漂亮 用的红外模块是哪个 有空也试试

使用特权

评论回复
板凳
在水一方00| | 2020-10-31 23:09 | 只看该作者
规格书提供的材料有点简陋

使用特权

评论回复
地板
在水一方00| | 2020-10-31 23:10 | 只看该作者
为什么后来三极管证明没必要了?那用了什么替代呢?

使用特权

评论回复
5
chenxiaolang|  楼主 | 2020-11-4 00:37 | 只看该作者
正圆椭圆 发表于 2020-10-30 23:01
设计的很漂亮 用的红外模块是哪个 有空也试试

台湾亿光的IRM-H638T/TR2

使用特权

评论回复
6
chenxiaolang|  楼主 | 2020-11-4 00:40 | 只看该作者
在水一方00 发表于 2020-10-31 23:10
为什么后来三极管证明没必要了?那用了什么替代呢?

第一次设计担心红外接收管输出的信号不标准,所以加了两级三极管,其实在红外接收管输出脚只加一颗上拉电阻就可以正常接收

使用特权

评论回复
7
zhongtongxue| | 2020-11-8 09:19 | 只看该作者
楼主,如果我只要产生38K的波形给到红外引脚,是不是只要写以下代码即:

void P23_38K_init(void)
{
    Clk_SetPeripheralGate(ClkPeripheralRtc,TRUE);          
    Clk_SetRCLFreq(ClkFreq38_4K);       
    Clk_SetRCL_StableTime(ClkCycle256);               
    Clk_Enable(ClkRCL,TRUE);
   
    M0P_GPIO->P2ADS_f.P23 = 0;      // 数字信号
    M0P_GPIO->P23_SEL_f.SEL = 2;    // 端口复用功能选择
    M0P_GPIO->P2DIR_f.P23 = 0;      // 端口方向
    M0P_GPIO->CTRL1_f.IR_POL = 1;    // 反向输出
    //M0P_GPIO->CTRL1_f.IR_POL = 0;    // 正向输出   
}

盼复,谢谢大哥

使用特权

评论回复
8
晓伍| | 2020-11-13 12:45 | 只看该作者
现在红外的可靠距离是多远啊

使用特权

评论回复
9
磨砂| | 2020-11-13 12:46 | 只看该作者
为什么要拿掉三极管啊

使用特权

评论回复
10
zhufy| | 2021-2-25 13:54 | 只看该作者
请问楼主,这样配置后单片机主时钟变成了RCL,运行程序的主频只能是38.4k了对吗?有没有办法提高跑程序的频率,比如使用RCH ?

使用特权

评论回复
11
AndyYeung28| | 2021-2-27 10:41 | 只看该作者
666666666666666666666666666

使用特权

评论回复
12
pw32| | 2021-3-1 10:15 | 只看该作者
楼主这个小案例不错。
在水气热以及电表上基本都在使用红外通信,用于本地通信方式。受该种红外通信方式的限制,通信速率在1200、2400bps。
还有一种是多年前的手机笔记本也有红外接口,是近距离通信方式,通信速率高可以达到115200、1M速率。采用的调试方式是3/16 通信方式。
该种方式常见是38KHz 加载在发射TX上,其它厂家有已经有该种模式,内部已经加载好了,只需要TXD。
我们的MCU也可以巧妙的利用RCL(38.4KHz),38.4KHz,相对于38K 误差在范围内。
1.利用两个GPIO,一个TXD,另一个I能够映射到RCL 的IO 实现。
2. 一个I能够映射到RCL 的IO实现,结合定时器利用定时器按照位宽来开关RCL 的输出。
3. 同样的思路,利用DMA 位宽定时触发 开关RCL 控制寄存器。
后两个方法可以使用一个GPIO ,节省GPIO ,同时可以节省一个限流电阻和一个三极管。该方法在三表行业客户已经批量使用。

使用特权

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

本版积分规则

15

主题

48

帖子

4

粉丝