Skip to content

Instantly share code, notes, and snippets.

View tiagohm's full-sized avatar
🔭

Tiago tiagohm

🔭
View GitHub Profile
@tiagohm
tiagohm / MCP41XXX.c
Created March 1, 2018 23:14
Potenciometro Digital de 256 posições e 1 canal.
/*
MCP41XXX - Potenciometro Digital de 256 posições e 1 canal.
Autor: Tiago Melo
Blog: Microcontrolandos
Compilador: MikroC PRO PIC
Bibliotecas: Soft_SPI
*/
//Pinos do MCP41XXX.
void main() {
//Define o pino PB0 como saída para o LED.
DDRB.B0 = 1;
//Define o pino PB1 como entrada para o botão.
DDRB.B1 = 0;
//Habilita o resistor de pull-up do pino PB1.
PORTB.B1 = 1;
while(1) {
@tiagohm
tiagohm / AD5206.c
Last active May 14, 2020 12:03
Potenciômetro digital de 6 canais.
/*
AD5206 - Potenciômetro Digital de 6 canais.
Autor: Tiago Melo
Blog: Microcontrolandos
Compilador: MikroC PRO PIC
Bibliotecas: Soft_SPI
*/
// Pinos do AD5206 conectados ao PIC.
@tiagohm
tiagohm / MCP4725.c
Last active February 27, 2018 11:59
Conversor Analógico-Digital de 12 bits.
/*
MCP4725 - Conversor Analógico-Digital de 12 bits.
Autor: Tiago Melo
Blog: Microcontrolandos
Compilador: MikroC PRO PIC
Bibliotecas: Soft_I2C, Conersions, C_String
*/
//Pinos do MCP4725.
@tiagohm
tiagohm / TH02.c
Last active May 15, 2020 10:30
Sensor de umidade e temperatura
/*
TH02 - Sensor de umidade e temperatura.
Autor: Tiago Melo
Blog: Microcontrolandos
Compilador: MikroC PRO PIC
Bibliotecas: Soft_I2C, Lcd, Lcd_Constants, Conversions, C_String
*/
// Pinos do TH02.
@tiagohm
tiagohm / PCF8591.c
Last active February 22, 2018 01:57
PCF8591 - 8-bit A/D and D/A Converter
/*
PCF8591 - Conversor Analógico-Digital e Digital-Analógico de 8 bits.
Autor: Tiago Melo
Blog: Microcontrolandos
Compilador: MikroC PRO PIC
Bibliotecas: Soft_I2C
*/
#define PCF8591_ADDR(addr, rw) (0x90 | (addr << 1) | rw)
@tiagohm
tiagohm / E25xx320.c
Last active May 13, 2020 19:10
Memória EEPROM de 32Kb da Microchip.
/*
25XX320 - Memoria EEPROM SPI 32Kb
Autor: Tiago Melo
Blog: Microcontrolandos
Compilador: MikroC PRO PIC
Bibliotecas: Soft_SPI
*/
// Pinos do 25AA320.
//a memória para os parâmetros será alocada dessa forma: [n][p0][p1][...][pn]
//por isso usamos o endereço de n para obter o endereço dos outros parametros.
unsigned calcular_media(char n, ... ) {
char i;
unsigned res = 0;
for(i = 1; i <= n; i++) {
res += ((char*)&n)[i]; //aponta para o i-esimo parametro e recupera seu valor.
}
return (res / n);
}
/*
Demonstração do uso de um display de 7 segmentos com ATMEGA328P.
Autor: Tiago Melo
Blog: Microcontrolandos
Compilador: MikroC PRO AVR
Bibliotecas:
*/
//Mascara de bits usado para escrever um digito no display
@tiagohm
tiagohm / DS1631.c
Last active May 14, 2020 12:22
Termômetro e termostato digital.
/*
DS1631 - Termômetro e Termostato.
Autor: Tiago Melo
Blog: Microcontrolandos
Compilador: MikroC PRO PIC
Bibliotecas: Conversions, C_String, Lcd, Lcd_Constants, Soft_I2C
*/
//Pinos do LCD.