Escolar Documentos
Profissional Documentos
Cultura Documentos
Desenvolvimento
Assembly para
ARM Wearables &
IoT
1
Desenvolvimento Assembly para
ARM Wearables & IoT
Arduino Uno.
Fonte: https://www.arduinoecia.com.br/sensor-de-
temperatura-mlx90614-arduino/
2
Desenvolvimento Assembly para
ARM Wearables & IoT
a) o código.
// C++ code
//
char degree = 176; //ASCI valor para grau
const int buzzerPin = 9;
int distancia = 0;
#define LED_VERDE 5
#define LED_LARANJA 6
#define LED_VERMELHO 7
void setup()
{
Serial.begin(9600);
pinMode(LED_VERDE, OUTPUT);
pinMode(LED_LARANJA, OUTPUT);
pinMode(LED_VERMELHO, OUTPUT);
pinMode(buzzerPin, OUTPUT);
}
void loop()
{
// Define a variável "distancia" como informações
// que o sensor está recebendo
distancia = 0.01723 * readUltrasonicDistance(3, 2);
// Imprimi no Monitor Serial a distância que o
// Sensor está recebendo
Serial.print("Distancia em cm:");
Serial.println(distancia);
// Condição 1
if (distancia >= 100) {
3
Desenvolvimento Assembly para
ARM Wearables & IoT
void ativarBuzzer(){
analogWrite(buzzerPin, 127);
delay(500);
analogWrite(buzzerPin,0);
delay(500);
}
digitalWrite(triggerPin, LOW);
pinMode(echoPin, INPUT);
// Reads the echo pin, and returns the sound wave travel
time in microseconds
4
Desenvolvimento Assembly para
ARM Wearables & IoT
Fonte:
https://www.tinkercad.com/things/6NRKcMDR9rl-
copy-of-medidor-de-
distancia/editel?sharecode=ftax5ITafZRp-
sIbWRktrdPUhNAMwmXoMeAHKcic1SI
5
Desenvolvimento Assembly para
ARM Wearables & IoT
asm volatile (
);
void loop() {
asm volatile (
6
Desenvolvimento Assembly para
ARM Wearables & IoT
"OneSecondDelay: \n\t"
"brne 2b \n\t"
"brne 1b \n\t"
7
Desenvolvimento Assembly para
ARM Wearables & IoT
"breq 3f \n\t"
"rjmp 1b \n\t"
"3: \n\t"
"ret \n\t"
);
8
Desenvolvimento Assembly para
ARM Wearables & IoT
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
void loop() {
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
9
Desenvolvimento Assembly para
ARM Wearables & IoT
10
Desenvolvimento Assembly para
ARM Wearables & IoT
void setup() {
asm volatile (
);
11
Desenvolvimento Assembly para
ARM Wearables & IoT
void loop() {
asm volatile (
"OneSecondDelay: \n\t"
"ldi r18, 0 \n\t" //delay 1 second
"ldi r20, 0 \n\t"
"ldi r21, 0 \n\t"
"3: \n\t"
"ret \n\t"
);
}
12
Desenvolvimento Assembly para
ARM Wearables & IoT
13