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

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

3天内不再提示

【天启教育M1开发板试用体验】python按键控制LED流水灯

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

扫码添加小助手

加入工程师交流群

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


【目的】在用转接板的两个按键来控制LED的左右移动
【步骤】
1、建立一个按键显示缓存mylist =[0x08,0x08,0x08,0x08,0x08,0x08] 用这个缓存生成显示用的字符串
#value= '1000000,1000000,1000000,1000000,1000000,1000000'
再用显示函数tqmain.matri_strfill_display来驱动整个显示屏,函数如下:

def get_key():
  global state
  key_value1 = tqs1.key_get_status(2)
  #print(key_value1)
  if key_value1 == 0:
    for i in range(0,6):
      mylist[i] = mylist[i]>>1
      if mylist[i] == 0x00:
        mylist[i] = 0x01
    print("KeyB changed")
    state = True

注:state,为了加快按键的检测实时性,这里引入这个状态标志,如果按键事件发生,则更新这个状态键,主程序再去显示。
2、按键检测程序。首先要import tqs1模块,如果有检测到按键按下,测更新state状态标志,缓存做相对的位移动。具体程序如下:

def get_key():
  global state
  key_value1 = tqs1.key_get_status(2)
  #print(key_value1)
  if key_value1 == 0:
    for i in range(0,6):
      mylist[i] = mylist[i]>>1
      if mylist[i] == 0x00:
        mylist[i] = 0x01
    print("KeyB changed")
    state = True
  key_value2 = tqs1.key_get_status(1)
  if key_value2 == 0:
    for i in range(0,6):
      mylist[i] = mylist[i]<<1
      if mylist[i] > 0x40:
        mylist[i] = 0x40
    print("KeyA changed")
    state = True

3、然后在主程序下面调用以上两个程序。测可以实现两个按键控制LED灯左右移动。

import os
import tqs1
import tqmain
#value= '1000000,1000000,1000000,1000000,1000000,1000000'
mylist =[0x08,0x08,0x08,0x08,0x08,0x08]
tqmain.serial_write_line("start")
state = True
def disp_tq():
  global state
  state = False
  mystr =[]
  for i in range(0,6):
    myvalue = mylist[i] | 0x80 #确保可以去掉0b1
    mystr.append(bin(myvalue).replace('0b1',''))
  #tqmain.serial_write_line(mystr[1])
  value = ','.join(mystr)
  tqmain.matri_strfill_display(value)
  
def get_key():
  global state
  key_value1 = tqs1.key_get_status(2)
  #print(key_value1)
  if key_value1 == 0:
    for i in range(0,6):
      mylist[i] = mylist[i]>>1
      if mylist[i] == 0x00:
        mylist[i] = 0x01
    print("KeyB changed")
    state = True
  key_value2 = tqs1.key_get_status(1)
  if key_value2 == 0:
    for i in range(0,6):
      mylist[i] = mylist[i]<<1
      if mylist[i] > 0x40:
        mylist[i] = 0x40
    print("KeyA changed")
    state = True

while True:
  get_key()
  if state == True:
    print("dispn")
    disp_tq()
  os.sleep(0.1)

【总结】开发板支持python编程,可以实现很多好玩的东西。
【备注】由于被抽到外地支援抗疫,这个开发板非常容易携带,工作之余还可以继续写帖子。

按键控制LED,视频演示,详见作者原帖子内容。



声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • LED流水灯
    +关注

    关注

    0

    文章

    10

    浏览量

    8656
  • 开发板试用
    +关注

    关注

    3

    文章

    303

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    昉·星光开发板按键处理

    矩阵键盘的处理 二、准备工作 在开始本次课程的实际操作之前,同学们需要做好一些准备工作,课程中涉及到的硬件如下: 开发板:昉·星光开发板 LED:单色LED模块
    发表于 03-26 06:31

    【RA-Eco-RA4M2开发板评测】+ 以按键控制LED

    RA-Eco-RA4M2 v2.0 开发板是一款高品质的开发工具,有机会能接触到它,十分感谢组织者和厂家的支持。 该开发板的外观如图1
    发表于 03-24 14:36

    EVAL - M1 - 101T评估:电机控制应用的理想选择

    EVAL - M1 - 101T评估:电机控制应用的理想选择 在电机控制应用领域,一款性能出色、功能丰富的评估能为电子工程师的设计工作带
    的头像 发表于 12-21 14:45 1526次阅读

    蜂鸟E203在黑金XC7A200T型FPGA上点亮LED并实现流水灯

    一、队伍介绍 本篇介绍的内容是蜂鸟E203在黑金XC7A200T型FPGA上点亮LED并实现流水灯。 二、前言 在此之前我们已经将蜂鸟E203在黑金XC7A200T型FPGA开发板上,所以
    发表于 10-31 09:04

    【作品合集】沁恒微电子CH585开发板测评

    体验】+开箱点灯篇【沁恒CH585开发板免费试用体验】+PWM呼吸灯【沁恒CH585开发板免费试用体验】+手机端控制板
    发表于 09-08 10:38

    【RA4M2-SENSOR】+按键控制LED

    RA4M2-SENSOR开发板配有LED按键,利用它可进行GPIO口的输入输出测试,其电路见图1所示。 图
    发表于 09-02 16:18

    【RA-Eco-RA6M4开发板评测】CTSU触摸按键控制LED

    RA6M4开发板带有两个触摸按键,是瑞萨自己研发的触摸设计。这个调试案例需要用到SWD.我使用的是EZCUBE3.使用typec外部供电。 准备工作 连接好环境,EZCUBE3的2脚和4脚分别连接线路
    发表于 07-28 22:01

    【创龙TL3562-MiniEVM开发板试用体验】--开发板外设与接口测试

    本篇讲述开发板使用shell命令进行驱动测试。 1.LED亮灭 开发板板载两颗用户LED,原理如下 下面输入脚本命令,可以控制
    发表于 07-27 16:27

    【RA-Eco-RA6M4开发板评测】+01+开箱测评+UART+PWM+LED

    【RA-Eco-RA4E2-64PIN-V1.0开发板试用】+03+UART+控制舵机+控制LED - 瑞萨单片机论坛 - 电子技术论坛 -
    发表于 07-17 23:43

    【RA-Eco-RA6M4开发板评测】——2.串口打印

    3_ON;delay_ms(200);LED3_OFF; printf(\"欢迎试用瑞萨电子RA-Eco-RA6M4开发板评测\\\\r\\\\n\"); printf(\"摒弃
    发表于 07-16 13:20

    【沁恒CH585开发板免费试用体验】GPIO 流水灯

    电路图 值得注意的,不同的开发板LED连接的GPIO一般是不同的,请注意修改。这里将LED0接到PB8,LED1接到PB17。 3 GPIO 流水
    发表于 07-04 22:55

    【BPI-CanMV-K230D-Zero开发板体验】+灯效控制Python编程

    ,在学习Python编程的基础上通过GPIO来实现LED灯的控制。 在开发板上,仅有的2个可供GPIO控制的器件是RGB_
    发表于 06-27 17:33

    基于RK处理器,创龙TL3562-MiniEVM开发板试用体验

    数量: 10块   更多热点文章阅读 基于平头哥TH1520芯片,润开鸿HH-SCDAYU800A开发板免费试用 RISC-V开发板深度评测!顶级开发板免费
    的头像 发表于 06-05 16:31 1343次阅读
    基于RK处理器,创龙TL3562-MiniEVM<b class='flag-5'>开发板</b><b class='flag-5'>试用</b>体验

    性能强悍!合众HZ-RK3568开发板试用体验

    月19日   评测数量: 10块   更多热点文章阅读 基于平头哥TH1520芯片,润开鸿HH-SCDAYU800A开发板免费试用 RISC-V开发板深度评测!顶级开发板免费
    的头像 发表于 06-05 16:30 1698次阅读
    性能强悍!合众HZ-RK3568<b class='flag-5'>开发板</b><b class='flag-5'>试用</b>体验

    【评测试用】合众HZ-T536开发板免费试用体验

    【评测试用】合众HZ-T536开发板免费试用体验
    的头像 发表于 05-27 08:05 1226次阅读
    【评测<b class='flag-5'>试用</b>】合众HZ-T536<b class='flag-5'>开发板</b>免费<b class='flag-5'>试用</b>体验