ATMEGA USART处理箭头键

时间:2014-07-23 08:01:53

标签: c assembly avr atmega

我遇到问题,我必须通过USART按下计算机上的按键来控制ATMEGA 1280的PWM。我可以使用ASCII键和控制PWM来控制它。问题是他们要求使用箭头键,现在问题是箭头键没有ASCII值,而我现在没有ATMEGA 1280供我使用。我不知道与箭头键的接收值相比有什么值。有人有想法吗?

2 个答案:

答案 0 :(得分:4)

您需要使用像Putty或其他终端仿真软件这样的终端仿真器。如果您需要使用句柄箭头键,请使用control escape sequences

因此,如果您需要处理向上箭头键并按下向上键,您将收到UART ASCII序列:" ESC 1 A"。 ESC在ASCII中为0x1B。其他字符只是常规的ASCII字符。您将在我提供的页面中找到其他序列。 你需要解析序列,你将得到所有的密钥。

答案 1 :(得分:2)

光标键不是标准ASCII字符集的一部分,因此它们不会生成可通过UART发送的字符...

可以通过扫描码(Google" PC扫描码")读取扩展键。您可能很幸运,您的终端程序正在发送非ascii字符的扫描码,但这些是2字节序列,所以如果你得到它们,你可能会忽略它们。