在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于Microchip 8位微控制器制作超級馬里奧的蘑菇徽章

jf_zGNBEhbi ? 來源:趣無盡 ? 2023-09-11 10:16 ? 次閱讀

MAKER:Arnov Sharma/譯:趣無盡

今天給大家帶來一期致敬經典的超級馬里奧的徽章。可愛的蘑菇徽章,經典的紅黃配色,立馬把我們拉回到兒時的快樂的時光里(不小心暴露了年齡)。

這款可穿戴徽章由定制的 PCB 構成,采用 SOIC8 封裝的 Attiny85 供電,添加了三個 WS2812B LED 燈可以使蘑菇徽章閃閃發光。你可以把它佩戴在身上也可以別在書包上。

制作過程很簡單,喜歡的創客可以動手試試看!

組件清單

定制 PCB × 1
Attiny85 × 1
WS2812B LED 燈 × 3
1uf 0805 電容 × 1
胸針 × 1
SMD 紐扣電池座 × 1
CR2032 電池 × 1
SOIC8 燒寫夾 × 1

項目介紹

該徽章基于 Microchip 8 位的低功耗微控制器,同時結合了 8 KB ISP 閃存、512B EEPROM、512B SRAM和六條通用 I/O 線,由 Attiny85 供電。

它是一個功能強大的小型 MCU,可以縮小整個設置實現很多基于 Arduino 的項目。更多的數據資料可點擊查看,https://www.microchip.com/en-us/product/ATtiny85。

我采用 CR2032 紐扣電池來供電,它可以為系統提供 3V 電壓。其中,三個 WS2812B LED 燈,每個 LED 燈消耗 50mA,總共 150mA,CR2032 的容量為 210mAh,所以可以提供 1 小時以上的備份。

WS2812B LED 燈的數據資料可點擊查看

PCB 板的創建過程

1、如圖所示,我需要設計一個蘑菇形狀的 PCB 板,將圖形導入到 PCB Cad 軟件。我選擇黑白圖像并將其作為 PCB 層導入。

2、如圖所示,Attiny85 可以控制 Din Dout Config 并完成連接的三個 WS2812B LED 燈的所有工作。

第一個像素的 Dout 連接至第二個像素的 Din,第二個像素的 Dout 連接至第三個像素的 Din,然后再用第一個像素的 Din 提供一個信號來控制這三個像素。

每個LED 燈都有 1uf 的電容器,然后用一個開關連接到 Attiny85 的 D4。最后,將紐扣電池裝入至電池倉供電。

3、設計 PCB 板
dcd9b57a-5047-11ee-a25d-92fbcf53809c.jpg

首先導入了蘑菇圖像并將其用作 PCB 的輪廓,其中一些細節k可用于制作阻焊層。

所有組件都是 SMD,將它們放在背面,再將 LED 燈放置在圓形區域。在圓形區域我添加了一個阻焊層的開口,可以從頂部可以看到 LED 燈的余光。

這些 WS2812B LED 燈采取倒置的自定義封裝,所以要將 LED 倒置焊接。

4、PCB 打樣

在最后一次檢查完電路板后,我將 Gerber 數據發送到 PCBWAY 以獲取樣品。我選擇的材料是帶有白色絲印的紅色阻焊層。

我在兩側的阻焊層上預留了開口,這樣就可以從頂部可以看到底部的LED 燈。

5、組裝 PCB 板
組裝 PCB 板主要有以下幾個步驟:

a、錫膏點膠工藝
在每個元件焊盤上逐個添加焊膏。我使用的是帶寬注射器的焊膏分配針,焊膏是由 63% 錫和 37% 鉛組成的普通焊膏。

b、拾取和放置過程
使用鑷子將每個組件放置在適當的位置,要小心地處理每一個元件。

c、熱板回流
放置好元件后,將整個電路板放到我自制的熱板回流焊板上進行焊接。完成后,請將其放置冷卻。

d、安裝 LED 燈
由于 PCB 板沒有任何通孔組件,需要在焊盤上焊接電線,然后再將 LED 燈與它連接起來。焊接過程中盡量快一點,因為 LED 焊盤過熱可能會引起外殼熔化。最后,完成三個 LED 燈的焊接。

安裝 Attiny85

1、刷機過程中不能通過 USB 直接對 ATTINY85 進行編程,我采用 ISP 閃存的方法,通過 attiny85 的 SPI 引腳燒錄引導加載程序,然后再燒錄。

為了將 Attiny 與程序連接起來,我使用 SOIC8 燒寫夾,直接將 Attiny 連接到該夾子上。

2、請在 Arduino IDE 中下載并安裝 Attiny85 Core 文件,https://github.com/SpenceKonde/ATTinyCore 。

文件->首選項 PC 或者 Arduino->首選項 Mac,在 “Additional Boards Manager URLs” 中輸入https://github.com/SpenceKonde/ATTinyCore 。

工具->主板->主板管理器,如果使用 1.6.6 版本,請關閉板子管理器并重新打開它。
選擇”ATTinyCore by Spence Konde”,然后單擊安裝。

3、設置 AVR 芯片。AVR 芯片通常是空白的,它需要設置與 Arduino IDE 兼容性,所以需要編程 AVR 程序,例如 USBASP。這里有一個非常簡單的方法,你可以使用 Arduino Uno 或 Nano 板制作自己的 AVR 編程器。

將 Arduino 板與 com 端口連接并選擇以下 sketch:
Example->在 ArduinoISP 中將 sketch 上傳至主板。進入工具菜單并在程序部分選擇 Arduino 作為 ISP 選項。點亮 Attiny85 后,在 Board 部分選擇 Attiny85。

編程過程會使用到 VCC、GND 和四個數據引腳。三個引腳分別連接到 MISO、MOSI 和 SCK 來實現目標,第四個引腳起到復位的作用。

4、用線將 Attiny85 與 Arduino 連接起來。
注意在將 ISP Sketch 上傳到 Arduino 之后,需要在 Arduino 的 Reset 和 GND 引腳之間添加一個 10uf 的電容。

我沒有使用 Arduino 和面包板來完成這項工作,而是使用我自制的用 Attiny 或 Atmega MCU 制作的 DIY Attiny Programmer。

具體詳情可點擊查看,https://www.instructables.com/Multiple-ATtiny8513A-Programmer/。

在以上接線配置中將主板連接到 Arduino 作為 ISP 設置。
選擇正確的端口、正確的編程器(Arduino 作為 ISP),然后點擊 Burn Bootloader。
等待幾秒鐘,你將完成燒錄引導程序的消息。

打開要上傳到這個 AttinyGo 的 Sketch,然后到 Sketch 菜單并選擇上傳程序。
最后 Sketch 會上傳到 attiny85。

編碼

dd15cf88-5047-11ee-a25d-92fbcf53809c.jpg

編碼是 Neopixel buttoncycler sketch,當按下連接到 attiny D4 的按鈕時,就會改變 neopixels 的顏色和動畫。

#include 


#define BUTTON_PIN   4    // Digital IO pin connected to the button.  This will be
                          // driven with a pull-up resistor so the switch should
                          // pull the pin to ground momentarily.  On a high -> low
                          // transition the button press logic will execute.


#define PIXEL_PIN    0    // Digital IO pin connected to the NeoPixels.


#define PIXEL_COUNT 3


// Parameter 1 = number of pixels in strip,  neopixel stick has 8
// Parameter 2 = pin number (most are valid)
// Parameter 3 = pixel type flags, add together as needed:
//   NEO_RGB     Pixels are wired for RGB bitstream
//   NEO_GRB     Pixels are wired for GRB bitstream, correct for neopixel stick
//   NEO_KHZ400  400 KHz bitstream (e.g. FLORA pixels)
//   NEO_KHZ800  800 KHz bitstream (e.g. High Density LED strip), correct for neopixel stick
Adafruit_NeoPixel strip = Adafruit_NeoPixel(PIXEL_COUNT, PIXEL_PIN, NEO_GRB + NEO_KHZ800);


bool oldState = HIGH;
int showType = 0;


void setup() {
  pinMode(BUTTON_PIN, INPUT_PULLUP);
  strip.begin();
  strip.show(); // Initialize all pixels to 'off'
}


void loop() {
  // Get current button state.
  bool newState = digitalRead(BUTTON_PIN);


  // Check if state changed from high to low (button press).
  if (newState == LOW && oldState == HIGH) {
    // Short delay to debounce button.
    delay(20);
    // Check if button is still low after debounce.
    newState = digitalRead(BUTTON_PIN);
    if (newState == LOW) {
      showType++;
      if (showType > 9)
        showType=0;
      startShow(showType);
    }
  }


  // Set the last button state to the old state.
  oldState = newState;
}


void startShow(int i) {
  switch(i){
    case 0: colorWipe(strip.Color(0, 0, 0), 50);    // Black/off
            break;
    case 1: colorWipe(strip.Color(255, 0, 0), 50);  // Red
            break;
    case 2: colorWipe(strip.Color(0, 255, 0), 50);  // Green
            break;
    case 3: colorWipe(strip.Color(0, 0, 255), 50);  // Blue
            break;
    case 4: theaterChase(strip.Color(127, 127, 127), 50); // White
            break;
    case 5: theaterChase(strip.Color(127,   0,   0), 50); // Red
            break;
    case 6: theaterChase(strip.Color(  0,   0, 127), 50); // Blue
            break;
    case 7: rainbow(20);
            break;
    case 8: rainbowCycle(20);
            break;
    case 9: theaterChaseRainbow(50);
            break;
  }
}


// Fill the dots one after the other with a color
void colorWipe(uint32_t c, uint8_t wait) {
  for(uint16_t i=0; i

最后,安裝好 CR2032 紐扣電池,這枚可愛的蘑菇徽章就可以閃光了。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 微控制器
    +關注

    關注

    48

    文章

    7923

    瀏覽量

    153803
  • pcb
    pcb
    +關注

    關注

    4356

    文章

    23438

    瀏覽量

    407152
  • led燈
    +關注

    關注

    22

    文章

    1595

    瀏覽量

    109400
  • microchip
    +關注

    關注

    52

    文章

    1544

    瀏覽量

    118812

原文標題:簡單有趣,DIY 超級馬里奧的蘑菇徽章

文章出處:【微信號:趣無盡,微信公眾號:趣無盡】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    基于ESP32制造有趣的超級馬里奧主題時鐘

    這是一款超級馬里奧主題的時鐘,基于 ESP32 和彩色點陣制造,非常生動有趣。使用 ESP32 來控制 LED 矩陣。對于沒法自制 PCB 板的新手來說 ESP32 開發板是非常不錯的選擇。如何利用好板子取決于你拍線的能力。
    的頭像 發表于 10-28 11:54 ?5858次閱讀
    基于ESP32制造有趣的<b class='flag-5'>超級</b><b class='flag-5'>馬里奧</b>主題時鐘

    用labview設計超級馬里奧游戲時如何加障礙物?

    用labview設計超級馬里奧游戲時如何加障礙物
    發表于 05-09 13:33

    RFID技術讓現實版馬里奧賽車成為可能

    自奧斯汀滑鐵盧實驗室決定將RFID標簽應用于游戲,這樣一來,在現實世界里,你也可以玩一把馬里奧賽車了。
    發表于 01-30 11:11 ?611次閱讀

    iPhone7發布會上提到的游戲 馬里奧大叔15日可以在iOS平臺試玩了!

    在今年9月8日的蘋果發布會上,除了iPhone7,馬里奧之父宮本茂的現身也成了一大亮點。在宮本茂上臺之前,蘋果發布會的大屏幕上就已經出現了經典的馬里奧到達終點后拉下旗子的畫面,意味著馬里奧
    發表于 11-16 11:14 ?971次閱讀

    超級馬里奧Run安卓版即將上市,國內玩家先別激動

    12 月 29 日,任天堂官方在國外社交網站推特上宣布,超級馬里奧Run已經登錄了Google Play 并開啟預約注冊,現在注冊的用戶,未來可以第一時間獲知安卓版超級馬里奧Run
    發表于 12-30 17:29 ?891次閱讀

    8微控制器降低車身應用的總體成本

    8微控制器降低車身應用的總體成本
    發表于 01-24 16:00 ?4次下載

    帶CAN 控制器的單片8 微控制器

    帶CAN 控制器的單片8 微控制器
    發表于 09-22 10:06 ?8次下載
    帶CAN <b class='flag-5'>控制器</b>的單片<b class='flag-5'>8</b> <b class='flag-5'>位</b><b class='flag-5'>微控制器</b>

    利用視頻游戲語料庫,訓練一個GAN模型為超級馬里奧兄弟生成游戲級別

    在視頻游戲中,馬里奧游戲級別有不同的表征Level Corpus (VGLC) 和Mario AI 框架,這兩種都是基于tile的表征形式。具體地說,以VGLC 表征的馬里奧級別使用特定的字符符號來
    的頭像 發表于 07-25 17:59 ?4350次閱讀
    利用視頻游戲語料庫,訓練一個GAN模型為<b class='flag-5'>超級</b><b class='flag-5'>馬里奧</b>兄弟生成游戲級別

    馬里奧忠實粉絲稱其自制的渲染圖被超級任天堂世界官網盜用

    ,但它最近卻被發現盜用了粉絲制作的渲染圖。 推特用戶“uJIdow”是一馬里奧的忠實粉絲,他致力于制作各種馬里奧的渲染圖。昨日(1.7),
    的頭像 發表于 01-08 12:52 ?2070次閱讀

    Labview編的超級馬里奧8.0源碼

    Labview編的超級馬里奧8.0源碼
    發表于 11-02 16:35 ?29次下載

    8微控制器 -MCU ?PIC16F1503-I/SL

    8微控制器 -MCU PIC16F1503-I/SL 制造商: Microchip 產品種類: 8
    發表于 11-18 12:51 ?19次下載
    <b class='flag-5'>8</b><b class='flag-5'>位</b><b class='flag-5'>微控制器</b> -MCU ?PIC16F1503-I/SL

    Microchip推出了超過60款8MCU

    為滿足對 8 微控制器 (MCU) 的需求,Microchip 推出了 5 個新系列、超過 60 款器件、8
    的頭像 發表于 05-06 16:51 ?2339次閱讀
    <b class='flag-5'>Microchip</b>推出了超過60款<b class='flag-5'>8</b><b class='flag-5'>位</b>MCU

    創建一個動畫馬里奧時鐘的教程分享

    本文將指導您以非常簡單的步驟創建一個動畫馬里奧時鐘,它可以成為任何環境的復古裝飾物。
    發表于 07-25 16:32 ?3221次閱讀
    創建一個動畫<b class='flag-5'>馬里奧</b>時鐘的教程分享

    由ATtiny85微控制器控制的迷你小提琴徽章

    電子發燒友網站提供《由ATtiny85微控制器控制的迷你小提琴徽章.zip》資料免費下載
    發表于 07-29 15:03 ?0次下載
    由ATtiny85<b class='flag-5'>微控制器</b><b class='flag-5'>控制</b>的迷你小提琴<b class='flag-5'>徽章</b>

    帶有壓電蜂鳴器和Arduino的超級馬里奧主題曲

    電子發燒友網站提供《帶有壓電蜂鳴器和Arduino的超級馬里奧主題曲.zip》資料免費下載
    發表于 11-01 09:32 ?1次下載
    帶有壓電蜂鳴器和Arduino的<b class='flag-5'>超級</b><b class='flag-5'>馬里奧</b>主題曲
    主站蜘蛛池模板: 狠狠干天天射 | 国产成人综合自拍 | 亚洲人成电影院在线观看 | 国产高清免费视频 | 国产午夜一区二区在线观看 | 国模私拍视频在线 | 2021精品国产综合久久 | 亚洲va欧美va国产综合久久 | 日韩在线视频一区 | 国产精品片| 亚洲无色| 成年大片免费视频播放手机不卡 | 亚洲视频 欧美视频 | 欧美3d动漫网站 | 午夜免费伦费影视在线观看 | 欧美色婷婷天堂网站 | 国产香蕉98碰碰久久人人 | 亚洲人成网站色7799在线观看 | 日日干干夜夜 | 国产精品国产午夜免费福利看 | 天天做天天爱夜夜想毛片 | 717影院理伦午夜论八戒 | 欧美性生活一级 | 日本黄大片在线观看 | 在线免费观看黄色小视频 | 国产美女在线精品免费观看 | 国产国产人免费人成成免视频 | 亚洲播播 | 最新日本免费一区二区三区中文 | 直接黄91麻豆网站 | 女人张开腿让男人桶免费网站 | 国产午夜小视频 | 婷婷激情四月 | 天天爽夜夜爽8888视频精品 | 欧美国产黄色 | 一色屋成人免费精品网 | 韩国三级视频在线观看 | 国产免费一区二区三区在线 | 久久精品成人免费网站 | 午夜免费福利影院 | 1区2区3区4区 |