Timer 如何在微控制器中连接GPIO?

Timer 如何在微控制器中连接GPIO?,timer,vhdl,microcontroller,gpio,Timer,Vhdl,Microcontroller,Gpio,如何将8位GPIO通用输入/输出与3个8位定时器Timer0、Timer1、PWM作为多路复用器连接。 GPIO获取3个定时器输出作为输入,在它们之间进行选择。它的输出是作为多路复用器的3个输入之一 如何通过编码在VHDL设计中实现这种连接? GPIO中每个引脚的功能是什么? 谢谢。我投票决定不讨论这个问题,因为:1.这属于electronics.stackexchange.com,2。没有足够的细节-你需要向我们展示一些你已经拥有的代码。没有预览代码我正在工作,只是定时器实现这是设计所需的。

如何将8位GPIO通用输入/输出与3个8位定时器Timer0、Timer1、PWM作为多路复用器连接。 GPIO获取3个定时器输出作为输入,在它们之间进行选择。它的输出是作为多路复用器的3个输入之一

如何通过编码在VHDL设计中实现这种连接? GPIO中每个引脚的功能是什么?
谢谢。

我投票决定不讨论这个问题,因为:1.这属于electronics.stackexchange.com,2。没有足够的细节-你需要向我们展示一些你已经拥有的代码。没有预览代码我正在工作,只是定时器实现这是设计所需的。
*-- Assuming you have logic to produce the mux selects: mux_sel(1 downto 0) :*
C1: PROCESS (timer0, timer1, pwm, mux_sel) IS
BEGIN
 CASE mux_sel IS
  WHEN "00" => gpio_in <= timer0;
  WHEN "01" => gpio_in <= timer1;
  WHEN "10" => gpio_in <= pwm;              
  WHEN OTHERS => NULL;
 END CASE;
END PROCESS C1;


-- Even simpler:

gpio_in <= timer0 WHEN mux_sel = "00" ELSE
           timer1 WHEN mux_Sel = "01" ELSE
           pwm;