自己通过74LS 系列非门和与非门已设计出电路,也实现了差分信号,通过洞洞板焊接在测试也实现差分信号,上机却传送不了信号给现实屏,大师没无现成的仿真参考
9条回答 默认 最新
关注
引自强大而免费的微信小程序:皆我百晓生。
1. 问题分析
在设计RS485电路时,使用74LS00和74LS04芯片进行非门和与非门的设计,实现差分信号。在洞洞板上焊接后进行测试时,差分信号正常工作。但在上机时,却无法传送信号到显示屏上。问题可能出现在以下几个方面:
1.1 信号传输问题:可能是差分信号无法正确传输到显示屏上。
1.2 芯片选择问题:74LS00和74LS04芯片可能不适用于RS485电路。
1.3 电路连接问题:可能存在接线错误或连接不良的情况。
为了解决这些问题,我们需要逐个排查并进行相应的调试。
2. 信号传输问题
2.1 RS485信号规范
RS485是一种常见的差分信号传输标准,它允许在远距离和高速的数据通信中使用差分信号。RS485标准规定了信号传输的电平、波特率、信号线的驱动和接收能力等。在设计RS485电路时,需要遵循RS485信号规范。
2.2 差分信号传输
差分信号传输是基于正负两个相位信号之间的电压差来传输信息,减少了由于噪声对单个信号的干扰。在RS485电路中,需要使用差分信号传输来实现高速、远距离、抗干扰的数据通信。
2.3 信号传输线路
差分信号传输需要使用一对相反的信号线(通常称为A线和B线)来传输数据。发送端将数据通过差分驱动器将信号转换为差分信号,并通过A线和B线发送。接收端通过差分接收器将差分信号转换为相应的数据信号。
2.4 信号传输问题排查思路
- 检查差分信号是否正确传输到显示屏上,可以使用示波器或逻辑分析仪等工具来观察信号波形。
- 检查发送端和接收端的电路中是否添加了差分驱动器和差分接收器,以及其它必要的电路组件。
3. 芯片选择问题
3.1 74LS00和74LS04芯片
74LS00和74LS04芯片是非门和与非门芯片,它们可以实现逻辑门电路功能。但在设计RS485电路时,这两种芯片并不常用,可能不适合用于差分信号传输。
3.2 RS485驱动芯片
为了实现RS485通信,通常会选择专用的RS485驱动芯片,如MAX485、MAX488等。这些芯片具有专门优化的差分驱动和接收能力,能够更好地满足RS485信号规范。
3.3 选择适合的芯片
如果要实现RS485通信,建议选择专门的RS485驱动芯片,并按照其提供的电路设计指导进行设计。这样可以确保电路能够正确实现差分信号传输,提高信号的可靠性和稳定性。
4. 电路连接问题
4.1 确认电路连接
需要检查电路连接是否正确,包括芯片引脚连接、信号线连接等。可以使用万用表等工具检测引脚连接和信号线是否短路、接触不良等。
4.2 芯片引脚连接
确保74LS00和74LS04芯片的引脚连接正确,与设计图纸或器件手册对照检查引脚连接。
4.3 信号线连接
确认A线和B线的信号线连接正确,遵循RS485信号规范连接。
4.4 地线连接
确保地线连接良好,地线是差分信号传输中的参考电位,保持发送端和接收端的电位一致。
总结:
在设计RS485电路时,需要考虑信号传输问题、芯片选择问题和电路连接问题。可通过检查信号传输、更换适合的驱动芯片、检查电路连接等方式进行排查和调试。如果仍无法解决问题,可能需要进一步分析和调试,或者请教专业的硬件工程师。
解决 1无用
关注
解决 1无用- threenewbee 2023-12-11 19:06关注解决 无用评论 打赏 举报
关注
结合GPT给出回答如下请题主参考
首先,需要了解差分信号的概念。差分信号是指两个信号相反且幅度相等的信号,可以用于传输信息,具有抗干扰、抗噪声等优点。在设计RS485电路时,需要使用差分信号进行信息传输。我们可以通过使用两个非门构成一个差分放大器来实现差分信号的生成。
差分放大器电路如下所示:
其中,V1和V2为输入信号,A1和A2为非门。
实际电路中,可以使用74LS00和74LS04组成差分放大器。具体电路如下所示:
差分放大器的输出信号可以连接到RS485芯片的差分输入端口中,实现信号的传输。
以下是完整的差分RS485电路代码案例:
library IEEE; use IEEE.STD_LOGIC_1164.ALL; entity rs485_diff is Port ( A : in STD_LOGIC; B : in STD_LOGIC; EN : in STD_LOGIC; TX : out STD_LOGIC; RX : in STD_LOGIC); end rs485_diff; architecture Behavioral of rs485_diff is --定义常量 constant TX_ENABLE : STD_LOGIC := '0'; -- 使能TX输出 constant TX_DISABLE : STD_LOGIC := '1'; -- 禁止TX输出 constant UART_BAUD_RATE : integer := 9600; constant CLOCK_FREQUENCY : integer := 16*1000*1000; constant TICKS_PER_BIT : integer := CLOCK_FREQUENCY / UART_BAUD_RATE; --定义信号 signal tick_count : integer range 0 to TICKS_PER_BIT-1 := 0; signal output_tick : STD_LOGIC := '0'; begin --差分放大器 diff_amp : entity work.differential_amp port map (A=>A, B=>B, Y1=>TX, Y2=>not TX); -- TX输出控制逻辑 process (EN, tick_count, output_tick) begin if EN = '1' then if tick_count = TICKS_PER_BIT-1 then output_tick <= not output_tick; tick_count <= 0; else tick_count <= tick_count + 1; end if; TX <= output_tick; else TX <= TX_DISABLE; end if; end process; end Behavioral;
以上代码中,差分放大器的实现使用的是名为"differential_amp"的entity,需要根据实际情况进行修改。
在RS485传输中,还需要使用半双工通信方式,需要在发送和接收时进行切换,具体实现可以通过电路切换或编程方式实现。
解决 无用评论 打赏 举报- 杨得江-君临天下wyj 2023-12-11 22:47关注
引用C H A T G P T
library IEEE; use IEEE.STD_LOGIC_1164.ALL; entity rs485_diff is Port ( A : in STD_LOGIC; B : in STD_LOGIC; EN : in STD_LOGIC; TX : out STD_LOGIC; RX : in STD_LOGIC); end rs485_diff; architecture Behavioral of rs485_diff is --定义常量 constant TX_ENABLE : STD_LOGIC := '0'; -- 使能TX输出 constant TX_DISABLE : STD_LOGIC := '1'; -- 禁止TX输出 constant UART_BAUD_RATE : integer := 9600; constant CLOCK_FREQUENCY : integer := 16*1000*1000; constant TICKS_PER_BIT : integer := CLOCK_FREQUENCY / UART_BAUD_RATE; --定义信号 signal tick_count : integer range 0 to TICKS_PER_BIT-1 := 0; signal output_tick : STD_LOGIC := '0'; begin --差分放大器 diff_amp : entity work.differential_amp port map (A=>A, B=>B, Y1=>TX, Y2=>not TX); -- TX输出控制逻辑 process (EN, tick_count, output_tick) begin if EN = '1' then if tick_count = TICKS_PER_BIT-1 then output_tick <= not output_tick; tick_count <= 0; else tick_count <= tick_count + 1; end if; TX <= output_tick; else TX <= TX_DISABLE; end if; end process; end Behavioral;
解决 无用评论 打赏 举报 - 半生烟火一世迷离(白嫖别来私信) 2023-12-12 00:17关注解决 无用评论 打赏 举报
- IT工程师_二师兄 2023-12-12 01:08关注解决 无用评论 打赏 举报
- curating 2023-12-12 01:54关注解决 无用评论 打赏 举报
- 呈两面包夹芝士 2023-12-12 02:13关注解决 无用评论 打赏 举报