Digispark is a USB development board based on the ATtiny85 microcontroller, small in size and inexpensive, priced around 6 yuan on Taobao. Although its functionality is not as powerful as the Arduino UNO R3, it is more than sufficient for beginners or for some not-so-complex controls. Like the Arduino UNO R3 board that uses the ATmega328P, the development environment for Digispark is also the Arduino IDE. Friends who understand Arduino will miss a lot if they do not know Digispark.
Digispark Development Board
Digispark Specifications:
-
Supports Arduino IDE 1.0 + (currently 1.81)
-
Built-in USB (software implementation)
-
6 I/O pins (the Reset pin can also be used as an I/O pin)
-
8K Flash memory (Bootloader occupies 2KB, 10,000 write cycles)
-
512 bytes EEPROM (100,000 write cycles)
-
512 bytes RAM
-
I2C and SPI
-
3 PWM
-
4 ADC (10 bits)
Digispark is a very simple design development board, with only two main components: one is the controller ATtiny85, and the other is the 5V voltage regulator chip 7805, with some resistors, capacitors, and other components for the circuit. The voltage regulator chip is not actually necessary; its main function is to support non-USB power supply, such as inputting 12V voltage through the Vin and GND pins, at which point the voltage regulator chip will provide 5V power to the entire circuit. If you are interested, you can also try to make a Digispark development board yourself; if you do not use this board-style USB structure, you can also use Micro USB.
Digispark Circuit Diagram
Like the Arduino UNO R3 and mCookie, Digispark must have the Bootloader burned onto the ATtiny85 microcontroller before use. This Bootloader will occupy 2KB of program memory (Flash memory). Of course, you can also skip burning the Bootloader and directly upload your own program, in which case the entire 8KB space can be fully utilized. Generally, this is only done for final products; during the development phase, USB burning must be supported for debugging. The ATtiny85 has a 5-second delay upon power-up to wait for USB communication.
Setting Up the Development Environment
1. Install Arduino IDE 1.81
Download link https://www.arduino.cc/en/Main/Software
(1) Choose the appropriate download based on your computer’s operating system
(2) Go to the donation page and donate according to your ability
If you cannot pay in USD, you can directly click the gray “just download” button
(3) Install the downloaded software, approximately 89.3M
2. Install the Digispark driver
(1) Download and unzip the driver, click DPInst64 (for 64-bit systems) or Install Drivers (for 32-bit systems)
Driver download link http://pan.baidu.com/s/1hsga2FU
(2) Start Arduino IDE
FindFile -> Preferences -> Additional Board Manager URLs, copy
http://digistump.com/package_digistump_index.json
Then click OK to close the dialog
(3) SelectTools -> Board -> Board Manager
In the type, selectContributed, and install Digistump AVR Boards by Digistump
After installation, select Tools -> Board -> Digispark (Default – 16.5mhz)
3. Install the Digispark USB driver
Driver download link http://pan.baidu.com/s/1hsga2GG
After unzipping,Win7 users enter the windows_driver folder
Win0 users enter the windows_driver_installer folder
At this point, you are done.
You can start Arduino IDE and write your first program to control the LED on the Digispark to blink; the code is as follows:
#define LED_BUILTIN PB1
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // Turn on LED
delay(1000); // Delay 1 second
digitalWrite(LED_BUILTIN, LOW); // Turn off LED
delay(1000); // Delay 1 second
}
The process of uploading a program to the Digispark development board is different from other AVR development boards; you must first click the upload button in the IDE, which will wait for 60 seconds. If you insert the Digispark during this period, the program upload will be completed. Give it a try; practice is the only standard for testing truth.
Appendix: Pin Definitions of ATtiny85
In summary, the ATtiny85 is a compact microcontroller that integrates a clock circuit, simplifying hardware design, with 6 I/O ports available for user use: PB0 – PB5. The downside is that the chip is relatively expensive, priced around 3.0-3.5 yuan on Taobao.
With the Digispark development board, you can achieve many interesting functions, and the price of 6-7 yuan is also within an acceptable range. How about buying one to play with?
Leave a Comment
Your email address will not be published. Required fields are marked *