• set
    27
    2009

    Depurando programas em assembly no GNU/Linux (parte 1)

    Embora eu particularmente prefira a sintaxe AT&T à Intel. Estou tendo que aprender a usá-la (e bem). Para os estudos optei pelo NASM, GNU ld e o GDB. Um processo simples, descrito abaixo:
    #nasm -g -f elf programa.asm
    #ld programa.o
    #gdb -q a.out
    Vamos fazer um pequeno programa teste que carrega no registro ecx o valor da variável [...]

  • set
    21
    2009

    Básico de ponteiros com o GDB

    Esse é um pequeno lembrete para quem quer pegar o conceito de ponteiro rápido. É tão simples que nem programa direito você vai precisar, só seguir sua intuição e o GDB
    1. Básico
    Vamos começar com um código muito simples.

    #include <stdio.h>
    int main(int argc, char *argv[]) {
    int *ptr = NULL;
    int variavel_A;
    int variavel_B;
    variavel_A = 5;
    variavel_B = 18;
    return [...]

  • set
    14
    2009

    Arduino Gentoo Install

    If you are reading this post it’s probably that you already checked other resources and had some problem to build  avr-g++ using crossdev utility.
    crossdev -t avr -s4
    Note that cpp compiler wasn’t created.
    # qlist cross-avr/gcc | grep bin
    /usr/i686-pc-linux-gnu/avr/gcc-bin/4.4.1/avr-gccbug
    /usr/i686-pc-linux-gnu/avr/gcc-bin/4.4.1/avr-gcov
    /usr/i686-pc-linux-gnu/avr/gcc-bin/4.4.1/avr-cpp
    /usr/i686-pc-linux-gnu/avr/gcc-bin/4.4.1/avr-gcc
    /usr/i686-pc-linux-gnu/avr/gcc-bin/4.4.1/avr-gcc-4.4.1
    The problem is easy to fix. Simple edit /etc/portage/package.use/cross-avr changing ‘nocxx‘ to ‘-nocxx‘ and run emerge again.
    emerge cross-avr/gcc cross-avr/avr-libc [...]

  • set
    11
    2009

    Enviando SMS no GNU/Linux

    Essa semana vi no blog do Mauro Martins um post sobre mandar SMS a partir do Excel (recomendo ler lá antes). Fiquei curioso, mas por opção resolvi utilizar apenas o GNU/Linux. O exemplo a seguir pode ser feito utilizando qualquer sistema Linux, a linguagem Python (com o módulo do PySerial instalado) e um celular smartphone [...]

  • set
    09
    2009

    PySerial – Utilize o Python para controlar a interface serial

    Embora seja uma tecnologia antiga ainda é utilizada amplamente, muitos dos projetos eletrônicos no estilo “faça você mesmo” utilizam o protocolo de comunicação serial. Este post mostra como é possível (e fácil) utilizar a linguagem Python para fazer a interface com a porta serial (RS232) seja no Windows, GNU/Linux, *BSD, Solaris, etc. Com o PySerial [...]