7146| 0
|
[入门教程] 【掌控】mpython-加速计---十二生肖猜猜看 |
本帖最后由 rzegkly 于 2018-10-8 21:22 编辑 今天和孩子一起听了这首儿歌《十二生肖》,挺好听 小老鼠,吱吱叫,看到猫儿就跑掉。 牛伯伯,好强壮,看到红布向前闯。 虎大王,最神气,森林之中没的比。 兔宝宝,爱睡觉,走起路来蹦蹦跳。 龙爷爷,最神秘,躺在云里猛吐气。 小白蛇,小青蛇,摇摇摆摆最有趣。 小马哥,跑得快,跑呀跑呀快快快。 羊咩咩,最贪玩,野狼来了快快跑。 小猴子,吱吱叫,红红屁股摇摇摇。 大公鸡,小公鸡,早晨起来喔喔啼。 小狗狗,尾巴摇,坏人来了汪汪叫。 小猪猪,胖嘟嘟,打个滚来踏踏脚。 于是我想借助掌控板子制作了一个十二生肖猜猜看。练习一下掌控加速度传感器的使用,方法如下: 三、 一、收集素材 二、处理图片 1. 美图秀秀将图片设计为64*64像素,BMP格式 2.利2. 用mg2Lcd工具取模工具对图片进行取模 开始三、编写程序 [mw_shl_code=applescript,true]while True: x1 = accelerometer.get_x() y1 = accelerometer.get_y() z1 = accelerometer.get_z() time.sleep_ms(100) x2 = accelerometer.get_x() y2 = accelerometer.get_y() z2 = accelerometer.get_z() if abs(x1 - x2) > 0.5 or abs(y1 - y2) > 0.5 or abs(z1 - z2) >0.5: #任意一轴的分时差值超过0.5,则认为检测到摇动 display.fill(0) #清屏,以清掉以前显示数据 display.show() #刷新 num = random.randint(1,12) #随机产生1-12的数 #display.DispChar(str(num),20,25,1) #产生的随机数送显示缓存 #display.show() #数据送ODED显示 if num == 1: display.blit(fb1,32,0) #将fb1帧缓存送至oled显示,起始位(32,0) display.DispChar('子鼠 ',100,32) display.show() #刷新显示屏 if num == 2: display.blit(fb2,32,0) #将fb2帧缓存送至oled显示,起始位(32,0) display.DispChar('丑牛 ',100,32) display.show() #刷新显示屏 if num == 3: display.blit(fb3,32,0) #将fb3帧缓存送至oled显示,起始位(32,0) display.DispChar('寅虎 ',100,32) display.show() #刷新显示屏 if num == 4: display.blit(fb4,32,0) #将fb3帧缓存送至oled显示,起始位(32,0) display.DispChar('卯兔 ',100,32) display.show() #刷新显示屏 if num == 5: display.blit(fb5,32,0) #将fb3帧缓存送至oled显示,起始位(32,0) display.DispChar('午马 ',100,32) display.show() #刷新显示屏 if num == 6: display.blit(fb6,32,0) #将fb3帧缓存送至oled显示,起始位(32,0) display.DispChar('亥猪 ',100,32) display.show() #刷新显示屏 if num == 7: display.blit(fb7,32,0) #将fb7帧缓存送至oled显示,起始位(32,0) display.DispChar(' 辰龙',100,32) display.show() #刷新显示屏 if num == 8: display.blit(fb8,32,0) #将fb8帧缓存送至oled显示,起始位(32,0) display.DispChar('巳蛇',100,32) display.show() #刷新显示屏 if num == 9: display.blit(fb9,32,0) #将fb9帧缓存送至oled显示,起始位(32,0) display.DispChar('未羊',100,32) display.show() #刷新显示屏 if num == 10: display.blit(fb10,32,0) #将fb10帧缓存送至oled显示,起始位(32,0) display.DispChar(' 申猴',100,32) display.show() #刷新显示屏 if num == 11: display.blit(fb11,32,0) #将fb11帧缓存送至oled显示,起始位(32,0) display.DispChar(' 酉鸡',100,32) display.show() #刷新显示屏 if num == 12: display.blit(fb12,32,0) #将fb12帧缓存送至oled显示,起始位(32,0) display.DispChar(' 戌狗',100,32) display.show() #刷新显示屏 time.sleep_ms(100 )[/mw_shl_code] |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed