Página 1 de 3

QUERENDO PROGRAMAR LPC2103 EM BASIC ou C?

MensagemEnviado: 22 Nov 2007 14:26
por tcpipchip
'BASIC
DO
IO(15) = 0 ' turn on the LED
WAIT(1000) ' wait a second
IO(15) = 1 ' turn off the LED
WAIT(1000) ' wait a second
UNTIL 0

'C
while(1){ // loop forever
LOW(15); // turn on the LED
WAIT(1000); // wait a second
HIGH(15); // turn off the LED
WAIT(1000); // wait a second
}

Quanto voce pagaria para adicionar este recurso em seu LPC2103?

Veja o manual
http://www.inf.furb.br/~maw/arm/asm51.pdf

Re: QUERENDO PROGRAMAR LPC2103 EM BASIC ou C?

MensagemEnviado: 22 Nov 2007 16:42
por Rodrigo_P_A
é parecido com esse: http://www.hbbrbasic.com/ ?

MensagemEnviado: 22 Nov 2007 21:17
por tcpipchip
Nada contra o HBBRBASIC, funciona muito bem :) Tenho algumas sistemas rodando...

Veja um programa em HBBRBASIC para fazer um LED piscar...

sub main()
IODIR = &h00FF0000
DO
for delay = 0 to &h10000
IOCLR = not flasher
IOSET = flasher
flasher = flasher << 1
if (flasher and &h01000000) then
flasher = &h00010000
end if
next delay
LOOP WHILE 1=1
end sub

Nao é muito claro né????

Agora veja em ARMBASIC

DO
IO(15) = 0 ' turn on the LED
WAIT(1000) ' wait a second
IO(15) = 1 ' turn off the LED
WAIT(1000) ' wait a second
UNTIL 0

A licença é de U$10,00 por chip (o cliente fornece o LPC2103)

MensagemEnviado: 23 Nov 2007 07:49
por Rodrigo_P_A
Tá bom o preço , vou comprar um pra mim testar e indicar para usar com o meu Kit LPC

como faço para comprar?

tem IDE ?

MensagemEnviado: 23 Nov 2007 09:18
por ricardo.talkabout
tcpipchip, no ARM vai gravado algum interpretador?

MensagemEnviado: 23 Nov 2007 10:52
por tcpipchip
Ola, é um RUNTIME LIBRARY que pode ser chamado em C ou BASIC. O compilador é FREE e gera chamadas a endereços absolutos das rotinas da RUNTIME LIBRARY...como exemplo, I2C, SERIAL, SPI, FREQ, PULSIN, AD, etc...

MensagemEnviado: 23 Nov 2007 11:20
por Rodrigo_P_A
Nesse caso, acho o HBBasic melhor, pois num gera Runtime, e sim um código objeto para rodar no ARM.

Interpretadores, sempre são mais lentos.

Mas é bom saber, legal esse interpretador, se tem o manual, ou o site para eu dar uma olhada?

MensagemEnviado: 23 Nov 2007 11:46
por tcpipchip
Desculpe, talvez eu nao esteja me expressando bem...:(

Não interpretada, é codigo de máquina mesmo, rapidissimo!

Voce manda o LPC2103, é são gravadas as seguintes implementações

DAY,MONTH,YEAR,HOUR,MINUTE,SECOND,WEEKDAY,WAIT,TIMER,CHR,
HEX,LEFT,RIGHT,LEN,STR,VAL,STRCOMP,AD,DIR,DIRS,IN,INS,IO,
OUT,OUTS,BAUD,COUNT,FREQOUT,HIGH,I2CIN,I2COUT,I2CSPEED,
INPUT,OUTPUT,LOW,PULSIN,PULSOUT,PWM,HWPWM,RCTIME,TXD,RXD,
SERIN,SERIN,SERIN_TIMEOUT,INTERRUPT,SEROUT,SHIFTIN,SHIFTOUT,
SPIMODE,SPIIN,SPIOUT,SPIBI,OWOUT, OWIN, ABS, COS, SIN, MOD, <<,>>,
RND, ASC, SLEEP,
FUNCTION, SUB (COM PASSAGEM DE PARAMETROS), ETC.

Que pode ser chamada em C ou BASIC.

A idéia é permitir as pessoas possam migrar rapidamente para o ARM LPC2103 sem dificuldades, ou seja, sem se preocupar muito com a arquitetura e ganhando na perfomance e no preço.

Ahh, voce tem os comandos do BASIC

IF <expr> THEN <simple statement> {ELSE <simple statement>}
IF <expr> THEN
<statements>
{ELSEIF <expr>
<statements> }
{ELSE
<statements> }
ENDIF
SWITCH
{CASE <expr-list>
<statements> }
{CASE ELSE
<statements> }
ENDSELECT
FOR <lvalue> = <expr> TO|DOWNTO <expr> {STEP <expr>}
<statements>
NEXT <lvalue>
DO
<statements>
UNTIL <expr>
WHILE <expr>
<statements>
LOOP
EXIT
DIM <lvalue> (constant)
<lvalue> = <expr>
PRINT <expr> {;|,{<expr>}}
<label>:
GOTO <label>
GOSUB <label>
RETURN
DATA <constant>{,<constant>}
READ <lvalue>
RESTORE
RUN
CLEAR

TCPIPCHIP

MensagemEnviado: 23 Nov 2007 11:57
por Rodrigo_P_A
tcpipchip escreveu:Desculpe, talvez eu nao esteja me expressando bem...:(

Não interpretada, é codigo de máquina mesmo, rapidissimo!

http://www.inf.furb.br/~maw/arm/asm51.pdf

tá explicado, obrigado

MensagemEnviado: 08 Fev 2008 21:36
por Renato
Interessante esse Basic:
1) Tem para todos LPC,
2) Tratamento direto de interrupções ?
3) Bibliotecas prontas (rede, USB, etc) ?
4) Genericamente: Dá para fazer qualquer aplicação em qualquer LPC ?

Não entendi como licenciar esse compilador.

Grato antecipado.

MensagemEnviado: 10 Fev 2008 10:48
por sandei
???

MensagemEnviado: 11 Fev 2008 10:55
por tcpipchip
1) Tem para todos LPC,

APENAS LPC2103/06

2) Tratamento direto de interrupções ?

NAO TEM INTERRUPÇÕES

3) Bibliotecas prontas (rede, USB, etc) ?

NÃO. APENAS ESTAS FUNÇÕES:

DAY,MONTH,YEAR,HOUR,MINUTE,SECOND,WEEKDAY,WAIT,TIMER,CHR,
HEX,LEFT,RIGHT,LEN,STR,VAL,STRCOMP,AD,DIR,DIRS,IN,INS,IO,
OUT,OUTS,BAUD,COUNT,FREQOUT,HIGH,I2CIN,I2COUT,I2CSPEED,
INPUT,OUTPUT,LOW,PULSIN,PULSOUT,PWM,HWPWM,RCTIME,TXD,RXD,
SERIN,SERIN,SERIN_TIMEOUT,SEROUT,SHIFTIN,SHIFTOUT,
SPIMODE,SPIIN,SPIOUT,SPIBI,OWOUT, OWIN, ABS, COS, SIN, MOD, <<,>>, RND, ASC, SLEEP, FUNCTION, SUB (COM PASSAGEM DE PARAMETROS), ETC.



4) Genericamente: Dá para fazer qualquer aplicação em qualquer LPC ?

NAO.

É a licença de uso por chip gravado com as funções acima. Voce manda o chip e colocamos a licença (FIRMWARE)

MensagemEnviado: 15 Fev 2008 12:23
por tcpipchip
A partir de marco, voce pode mandar o seu LPC LPC2103 para mim e faco o upgrade para que que voce tenha acesso a todas as funcoes acima, utilizando a linguagem BASIC. Requer apenas TXD, RXD, DTR para GRAVACAO.
Mandamos junto tambem o projeto dele em DIP40 (PCAD 2004 e PROTEL 99).
A licenca por chip eh de U$10,00 para pequenas quantidades.

CPU ARM7 rodando a 60 Mhz
Programado via Interface Serial
Compilador compila >10 milhões de linha de código por segundo
32k de memória Flash com 8K para SRAM
6 canais de PWM por Hardware
24 IO compatíveis com TTL compatible digital I/O
6 Canais de conversores A/D de 10 bits, 100 KHz rate
Fonte de alimentação onboard regulada
Entradas e saídas Digitais
>1 milhão de operações de IO por segundo
SPI suporta transferência de 600 Kb (qualquer pino)
I2C suporta transferência de 380 Kb (qualquer pino)
Rotinas de SHIFT para bus síncrono de 800 Kb (qualquer pino)
Suporte a 1-Wire (qualquer pino)
Suporte a serial assincrona de até 115200 (qualquer pino)
Medição de geração de Pulso com resolução de 1uSec (qualquer pino)
PWM com resolução de 8 bit (qualquer pino)
Compatível com TTL
IO tolerante a 5V

TCPIPCHIP

MensagemEnviado: 15 Fev 2008 13:03
por mastk
ou seja um basicstamp macho :)

MensagemEnviado: 15 Fev 2008 17:50
por tcpipchip
E poe macho nisto!