Microchip-C18 x htsoft-C18

Marek Pavlu pavlu@HWserver.cz
Sobota Listopad 4 14:17:27 CET 2006


Zdravim,

Zatim nebylo kde ukrast cas na hrani si s timto, takze jsem to uz asi rok
odlozil do nejnizssiho supliku naspod stohu:(.
Nuze alespon vim, ze to jde:).

Jak jsem rikal, C30 a nejaky dsPIC nebo PIC24 by mozna bylo lepsim resenim.
Akorat je to vse na 3,3V, ale zase překladač je postaven na gcc, je tam
moznost primo pracovat s heapem a takove dalsi malickosti jako plne sw
rizeny Stach a podobne:), ktere cloveku na PC prijdou jako samozrejme, ale v
risi PIC dosud zabite:(.
Jsem si musel heap pro PIC18 a htsoft picc18 napsat sam:(.
Podpora kompilerem mizerna:(...

S pozdravem,
		Marek Pavlu

//  -----Original Message-----
//  From: hw-list-bounces@list.hw.cz [mailto:hw-list-bounces@list.hw.cz] On
//  Behalf Of Michal HW
//  Sent: Saturday, November 04, 2006 11:40 AM
//  To: hw-list@list.hw.cz
//  Subject: RE: Microchip-C18 x htsoft-C18
//  
//  Ne da se tam zapisovat i cist po jednom byte. Trva to jednu instrukci,
//  ale pointer je tri byte. Vysledny kod je des a hruza, C dava poradne
//  zabrat vypocet adresy promenne. Zjistil jsem nektere prasarny. Napriklad
//  Pokus=Pokus+1;. Pointer se vypocitava dvakrat!! HT-soft vubec nepouziva
//  instrukce s aut. inkrementaci a dekrementaci TBLPTR. Napriklad pri cteni
//  dvou po sobe lezicich instrukci. Zrovna jsem ve stadiu testu
//  kompilatoru. Po vikendu napisu vice. Skoda ze demo verze HT-Softu ma
//  omezene optimalizace.
//  Skoda ze neni nejaky MPLAB s napojenim na COMy a simulaci HW jako je
//  klavesnice a LCD.  Procesory neuveritelne poskocili kupredu, ale
//  vyvojove nastroje stagnuji.
//  Michal
//  ______________________________________________________________
//  > Od: pavlu@HWserver.cz
//  > Komu: "'HW-news'" <hw-list@list.hw.cz>
//  > Datum: 02.11.2006 16:44
//  > Předmět: RE: Microchip-C18 x htsoft-C18
//  >
//  >Zdravim,
//  >
//  >Jasne, setri to praci u PICC18, ale ja si to radeji dam do #define,
//  když
//  se
//  >mi to nechce psat:).
//  >
//  >Jinak koukam, ze delate slusne velky projekt, na PIC18F8622 a jemu
//  podobne s
//  >externi pameti se chystam ji delsi dobu, ale není cas a ani nutnost,
//  alespon
//  >dosud. No uz vim, za kym jit s radou o reseni externi sram pameti v
//  C18:)...
//  >
//  >Nicmene jsem dosud myslel, ze PICky tu pametu umi jen jako pamet kodu
//  nebo
//  >prepisovatelnou s tim, ze pristup pro cteni/zapis je jako pristup do
//  >standardni flashky, tedy blokove hlavne pri zapisu...
//  >
//  >Nebo tomu tak neni?
//  >
//  >S pozdravem,
//  >		Marek Pavlu
//  >
//  >//  -----Original Message-----
//  >//  From: hw-list-bounces@list.hw.cz [mailto:hw-list-
//  bounces@list.hw.cz]
//  On
//  >//  Behalf Of Michal HW
//  >//  Sent: Wednesday, November 01, 2006 4:46 PM
//  >//  To: HW-news
//  >//  Subject: Re: Microchip-C18 x htsoft-C18
//  >//  //  Jsem zvykly na bity z asm. Na preklad bitovych promennych se
//  podivam a
//  >//  zkusim to porovnat z unsigned char
//  >//  //  Libi se mi tento zapis u HT.C18: static volatile bit Tlacitko1
//  @
//  >//  PORTBIT(PORTB, 4);  Nebo treba GIE=0. (M.C18 - INTCONbits.GIE=0)
//  >//  //  Mam pole structur v externi pameti - 1024 polozek. Je tam 12
//  bitovych
//  >//  promennych. Kdyz je prepisu na unsigned char tak to hodi navic
//  10KB.
//  Je
//  >//  ale
//  >//  fakt, ze tam jeste misto mam. Popremyslim nad tim.
//  >//  //  Chybne pole structur. Menu v BC funguje, ale M.C18 hlasi chyby.
//  (Moc
//  >//  jsem
//  >//  si s tim nehral.)
//  >//  /*---------------------------------------------------------*/
//  >//  //Definice structury
//  >//  //  typedef struct {
//  >//   far u08 *p_Text;  //Text na prvni radek (v BC far nedavam)
//  >//   void (*Vypis)(); //Vypis hodnoty na druhy radek
//  >//   void (*Edit)(); //Tato funkce spusti editaci
//  >//   u08 Menu; //číslo nadřazeného menu
//  >//    u08 Pozice //číslo řádku v nadřazeném menu
//  >//    u08 Cas_Obnov; //Doba obnovovaní 0=není
//  >//  //  } MENU;
//  >//  //  /*---------------------------------------------------------*/
//  >//  // Texty pro menu
//  >//  //  GLOBAL const MENU Menu_Obsah [8][23]= {
//  >//  //   /*---------------------------------------------------------*/
//  >//   // Prazdné menu - číslo 0
//  >//  //   {
//  >//    {"",Prazdna_Funkce,Prazdna_Funkce,0,0,0}
//  >//   },
//  >//  //   /*---------------------------------------------------------*/
//  >//   // Hlavní menu - číslo 1
//  >//  //   {
//  >//    {"Databaze",Prazdna_Funkce,Databaze_Edit,0,0,0},
//  >//    {"Mereni",Mereni_Vypis,Mereni_Edit,0,0,0},
//  >//    {"Verze programu",Menu_Verze_Vypis,Prazdna_Funkce,0,0,0},
//  >//    {"Stav systemu",Prazdna_Funkce,Menu_2,0,0,0},
//  >//    {"Konfigurace systemu",Prazdna_Funkce,Menu_3,0,0,0},
//  >//    {"Konfigurace site",Prazdna_Funkce,Menu_4,0,0,0},
//  >//    {"Tabulka udalosti",Prazdna_Funkce,Menu_5,0,0,0},
//  >//    {"",Prazdna_Funkce,Prazdna_Funkce,0,0,0}
//  >//   },
//  >//   /*---------------------------------------------------------*/
//  >//   // Servisní menu - číslo 2
//  >//     {
//  >//      ....
//  >//      }
//  >//  atd....
//  >//  }
//  >//  //  Co se tyce vetsiho procesoru mam 18F8622 64KB FLASH, pak je
//  jeste
//  >//  18F8722
//  >//  ale ten ma pouze vetsi FLASH - 128KB.
//  >//  Dnes odpoledne jsem koncil na techto cislech:
//  >//  //  FLASH - 96%
//  >//  RAM - 80%
//  >//  External SRAM 70% (128KB)
//  >//   Nic optimistickeho
//  >//  //  Michal Gregor
//  >//  //  //  ----- Original Message -----
//  >//  From: "Marek Pavlu" <pavlu@HWserver.cz>
//  >//  To: "'HW-news'" <hw-list@list.hw.cz>
//  >//  Sent: Wednesday, November 01, 2006 4:15 PM
//  >//  Subject: RE: Microchip-C18 x htsoft-C18
//  >//  //  //  Zdravim,
//  >//  //  No nevim, ukazte ten kus kodu, ktery nechodi, protoze ja tu s
//  polem
//  >//  struktur
//  >//  potize nemam a ani studentska verze nemela...
//  >//  //  Zas tak moc pameti bit snad neusetri ne?
//  >//  Navic kdyz si predstavim ty konstrukce, ktere nekde v pameti
//  ukladaji
//  >//  jeden
//  >//  bit a potom s nim pracuji alespon tak, jak to resi PICC18, tak to
//  zase
//  >//  setri
//  >//  jen pamet dat zato pamet programu uz moc ne ve srovnani s typem
//  unsigned
//  >//  char a manmipulaci s nim jako porovnavani/testovani atd...
//  >//  //  Osobne takova rozsireni nepouzivam ani kdyz jsou takto
//  dostupna,
//  protoze
//  >//  budu to zase ja sam, koho to placne rakoskou pres prestiky, kdyz
//  kousek
//  >//  kodu
//  >//  budu chtit pouzit na jinem procesoru nebo jinem kompileru prave pri
//  >//  prechodu
//  >//  PICC18 a C18 nebo jinam...
//  >//  //  To toho vazne delate obrovske serie, ze se Vam vyplati takto
//  ztracet
//  >//  vlastni
//  >//  cas místo uziti vetsiho PIC? Bez ironie, jen zvedavost:).
//  >//  //  S pozdravem,
//  >//  Marek Pavlu
//  >//  //  //  -----Original Message-----
//  >//  //  From: hw-list-bounces@list.hw.cz
//  [mailto:hw-list-bounces@list.hw.cz]
//  >//  On
//  >//  //  Behalf Of Michal HW
//  >//  //  Sent: Wednesday, November 01, 2006 9:42 AM
//  >//  //  To: HW-news
//  >//  //  Subject: Re: Microchip-C18 x htsoft-C18
//  >//  //
//  >//  //  Asi jsem to spatne napsal. Ten bit mne netrapi, ale spoustu
//  veci
//  >//  //  ulehcuje,
//  >//  //  setri pamet, kratsi kod... V BC to mam takto: typedef unsigned
//  char
//  >//  bit;
//  >//  //
//  >//  //  Modifikator near. Mel by u obou kompilatoru ulozit promennou do
//  >//  pameti
//  >//  //  acces, ktera ma trosku rychlejsi pristup. Ale u Mic. C18 mi tam
//  >//  hlasil
//  >//  //  chybu.
//  >//  //
//  >//  //  Co mi ale vadi je pole structur, predpokladam ze to v norme je.
//  S
//  >//  tim si
//  >//  //  C18
//  >//  //  od Microchipu
//  >//  //  neporadila. Zatim jsem dalsi pokusy odlozil, takze nevim kde je
//  >//  chyba.
//  >//  //
//  >//  //  Ale je videt jedna vec, i kdyz je C normovano kazdy kompilator
//  si
//  >//  dela
//  >//  //  co
//  >//  //  chce a spousta veci lze implementovat ruznymi zpusoby.
//  >//  //
//  >//  //  Michal
//  >//  //
//  >//  //
//  >//  //
//  >//  //
//  >//  //  ----- Original Message -----
//  >//  //  From: "Marek Pavlu" <pavlu@HWserver.cz>
//  >//  //  To: "'HW-news'" <hw-list@list.hw.cz>
//  >//  //  Sent: Tuesday, October 31, 2006 3:23 PM
//  >//  //  Subject: RE: Microchip-C18 x htsoft-C18
//  >//  //
//  >//  //
//  >//  //  Zdravim,
//  >//  //
//  >//  //  Sorry, ale vycitat full ANSI C kompileru, ze neumi datovy typ
//  bit
//  je
//  >//  //  docela
//  >//  //  zcestne, ne???
//  >//  //
//  >//  //  Dale potom near, far a dalsi modifikatory thoto druhu jsou
//  silne
//  >//  //  implementacne zaavisle, netusim tedy, jak chcete na teto urovni
//  >//  //  prechazet
//  >//  //  mezi ruznymi cilovymi platformami???
//  >//  //
//  >//  //  Cimzto bych doporucil se podivat na normu ANSI C a zjistite, ze
//  >//  prave v
//  >//  //  ohledu na datovy typ bit je C18 vice ANSI C nez PICC18...
//  >//  //
//  >//  //  Dale pak jak zavadite v BC datovy typ bit by mne vazne docela
//  >//  zajimalo,
//  >//  //  ja
//  >//  //  si to predstavit neumim:(...
//  >//  //
//  >//  //  Ale trebas jsem vedle jak ta jedle, nejsu kovany informatik,
//  ale
//  i
//  >//  tak
//  >//  //  pochybuji, ze se pletu az tak seredne:).
//  >//  //
//  >//  //  S pozdravem,
//  >//  //  Marek Pavlu
//  >//  //
//  >//  //  //  -----Original Message-----
//  >//  //  //  From: hw-list-bounces@list.hw.cz [mailto:hw-list-
//  >//  bounces@list.hw.cz]
//  >//  //  On
//  >//  //  //  Behalf Of Michal HW
//  >//  //  //  Sent: Tuesday, October 31, 2006 12:44 PM
//  >//  //  //  To: HW-News
//  >//  //  //  Subject: Microchip-C18 x htsoft-C18
//  >//  //  //
//  >//  //  //  Pokousim se porovnat kompilatory. Oba dva maji napsano
//  "full
//  >//  ANSI
//  >//  //  C...".
//  >//  //  //  Mam odladeny soft na PC - BC++ . (70 000 radku) Je to psano
//  s
//  >//  //  ohledem na
//  >//  //  //  PIC
//  >//  //  //  procesory.
//  >//  //  //
//  >//  //  //  Ht-Soft se trochu hadal, ale prelozil vse. Zatim ale
//  program
//  >//  nechce
//  >//  //  //  fungovat, nekam se zabiha. (Drobny detail :-))) )
//  >//  //  //  Omezeni je u promennych v externi pameti. Napriklad nelze
//  napsat
//  >//  //  //  Structura.Bit_Pole=1 nebo ++Structura.Pocet. Taky je
//  nestastne
//  >//  //  vyresen
//  >//  //  //  pristup do externi pameti - u zapisu se vzdy inicializuje
//  TBLPTR
//  >//  i
//  >//  //  kdyz
//  >//  //  //  zapisuji do promennych za lezicich v pameti za sebou.
//  >//  //  //
//  >//  //  //  Microchip-C18 si neporadil s polem structur. Mam jich tam
//  >//  nekolik,
//  >//  //  takze
//  >//  //  //  je
//  >//  //  //  to o nicem. Musel jsem taky vymazat z prommennych "near".
//  >//  //  //  Dale nezna typ promenne bit, takze misto TMR1IF=1 musite
//  psat
//  >//  //  //  PIR1bits.TMR1IF=1. Taky jsem zatim neprisel na to jak
//  zapnout
//  >//  asm
//  >//  //  vypis.
//  >//  //  //
//  >//  //  //  Zatim tedy vysledek nic moc. Potrebuji odladit vse na PC a
//  co
//  s
//  >//  //  //  nejmensimi
//  >//  //  //  upravami prelozit do PICu, protoze ICDII je strasne pomala
//  -
//  u
//  >//  //  velkych
//  >//  //  //  procesoru je tak akorat  vhodne na ladeni drobnych
//  kosmetickych
//  >//  //  uprav.
//  >//  //  //
//  >//  //  //  Obe verze kompilatoru jsou posldniho data
//  >//  //  //
//  >//  //  //  Michal Gregor
//  >//  //  _______________________________________________
//  >//  HW-list mailing list  -  sponsored by www.HW.cz
//  >//  Hw-list@list.hw.cz
//  >//  http://list.hw.cz/mailman/listinfo/hw-list
//  >
//  >_______________________________________________
//  >HW-list mailing list  -  sponsored by www.HW.cz
//  >Hw-list@list.hw.cz
//  >http://list.hw.cz/mailman/listinfo/hw-list
//  >
//  
//  _______________________________________________
//  HW-list mailing list  -  sponsored by www.HW.cz
//  Hw-list@list.hw.cz
//  http://list.hw.cz/mailman/listinfo/hw-list




Další informace o konferenci Hw-list