1.Demonstrate and compare the toolchains and development workflows for available embedded architectures 2.Document your work to the group work page and reflect on your individual page what you learned
Individual assignment:1.Browse through the datasheet for your microcontroller.
2. Write a program for a microcontroller, and simulate its operation, to interact
(with local input &/or output devices) and communicate (with remote wired or wireless
connection)
3.Learning outcomes
To make things quick and easy for you, we have split all the boards into three main categories, Entry Level Arduino boards, Enhanced Arduino boards, and IoT Arduino boards. Further, we have also provided a table under each section for quick skimming, so let’s get started.
Entry-Level Arduino BoardsThese types of Arduino boards are the best choice to start with. In this category, most boards have either slow clock speed or a limited number of I/O ports. All these boards are powered by 8-bit microcontrollers. Most of them are easy to learn and make projects with. Not only that, there are a variety of modules and shield boards available on the market, especially targeting these base-level boards. Here is the table showing all the features of these boards.
Arduino Uno is the most popular and widely used development board. It is powered by an ATMega328P microcontroller. It is the most popular choice among the community because it’s, cheap, easy to learn and use, and also a variety of premade modules are available for this which makes it easier for developing new projects or prototypes. It consists of 14 Digital I/O out of which 6 pins are 8bit PWM pins, 6 pins are 10-bit Analog inputs, and basic communication ports like SPI, I2C, and UART.
Now, there are many different types of Arduino UNO boards available across the global market, but most of these boards are the clone or copy versions of the original UNO board that you see above. Hence the color or the appearance of the board might be different than what is shown above.
Connect the servo motor to the Arduino: Connect the signal wire of the servo to a digital pin on the Arduino (e.g., pin 9), and connect the power and ground wires of the servo to a power supply (e.g., the 5V and GND pins on the Arduino).
Include the Servo library: At the beginning of your Arduino sketch, include the Servo library by adding the following line of code:Create a Servo object: In the setup() function of your sketch, create a Servo object by declaring a variable of type Servo. For example:
Servo myServo;Attach the servo: In the setup() function, use the attach() method of the Servo object to attach the servo to the digital pin you connected it to. For example: myServo.attach(9);
Set the servo position: In the loop() function, use the write() method of the Servo object to set the position of the servo. The write() method takes a valuebetween 0 and 180, where 0 is the minimum position and 180 is the maximum position. For example:
Note that you may need to adjust the delay time and servo position values to suit your specific requirements.
Wokwi is an online simulator for electronics and embedded systems. It lets you simulate circuits, boards, sensors, and other components.
You can use Wokwi to prototype IoT projects.Features Simulate popular boards: Simulate Arduino, ESP32, STM32, and Raspberry Pi Pico Use a large library of components: Includes sensors, LEDs, LCDs, motors, and relays Integrate with development environments: Integrates with VS Code, PlatformIO, and Arduino Debug code: Use the VS Code debugger to debug your code
Capture digital signals: Use the Virtual Logic Analyzer to capture digital signals in your simulation
Connect to the internet: Use the built-in WiFi Gateway to connect to the internet and use cloud services