Jak zakázat CKDIV8 při použití USBasp a Khazama AVR programmeru? – Mikrokontroléry – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Jak zakázat CKDIV8 při použití USBasp a Khazama AVR programmeru? – Mikrokontroléry – Fórum – Programujte.comJak zakázat CKDIV8 při použití USBasp a Khazama AVR programmeru? – Mikrokontroléry – Fórum – Programujte.com

 

Becal
~ Anonymní uživatel
11 příspěvků
2. 3. 2013   #1
-
0
-

Zdravím,

chtěl bych se zeptat, jak se dá zakázat fuse bit CKDIV8 u mikrokontroléru ATmega16, používám-li USBasp programátor a pro nahrání .hex soboru do mcu Khazama AVR programmer. Přečtu-li fuse bity, objeví se tyto:

H-Fuse: OCDEN, JTAGEN, SPIEN, CKOPT, EESAVE, BOOTSZ1, BOOTSZ0, BOOTRST

L-Fuse: BODLEVEL, BODEN, SUT1, SUT0, CKSEL3, CKSEL2, CKSEL1, CKSEL0
Pod tím je ještě položka E-Fuse, ale když najedu na jakékoliv místo kurzorem, neukáže se žádný název fuse bitu
a nic tam není zaškrtlé. 

Jsem začátečník v oblasti mcu, tak mě prosím nekamenujte. :) 

Přidám ještě obrázek, jak to v té khazamě vypadá.

Předem děkuji za odpověď.

Nahlásit jako SPAM
IP: 90.178.95.–
KIIV
~ Moderátor
+43
God of flame
2. 3. 2013   #2
-
0
-

To je mi novinka.. sem ani netusil ze i ATMEGA16 ma CKDIV8 fuse... </irony> :)

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Becal
~ Anonymní uživatel
11 příspěvků
2. 3. 2013   #3
-
0
-

Ach, tak. :) 
Tak to tedy poděkuji svému kamarádovi za dobrou radu.
</irony>

Nahlásit jako SPAM
IP: 90.178.95.–
20. 2. 2014   #4
-
0
-

#1 Becal
Zdravím, řešim problém s "e-bayovským" programátorem USBASP v2.0 ve spolupráci s Khazamou. Před nahráváním programu mi začlo vyskakovat následující http://www.nahraj-obrazek.cz/?di=013929291938 chybové okno:

Error while operating...

Error Setting USBASP ISP Clock...

Snažím se neúspěšně rozběhnout jednoduchý program pro měření napětí (tedy ADC) a jelikož nejsem v psaní zatím tolik zběhlý nevím, jestli je chyba v kódu, nebo je způsobována tím programátorem. Pro jistotu přidám kód, myslím si, že by měl fungovat, možná taky ne:

/*-----Hlavičky, globalni promenne, konstanty-----------------------------------------------------------------------------------------------*/
#define F_CPU 8000000

#include <avr/io.h>
#include <stdio.h>
#include <stdlib.h>
#include <util/delay.h>
#include <string.h>
#include <avr/interrupt.h>
#include "lcd.h"

volatile float adc;
char text[32];
double u;

ISR(ADC_vect){    
    adc = ADC;    // zapis vysledku prevodu do promenne adc    
}

ISR(TIMER0_OVF_vect)
{
    char text[32];
    double u;
    TCNT0 = 156;
    /*Vypocet napeti a vypis na displej*/
    
    u = (adc*5*3.167/1024);
    lcd_gotoxy(0,0);
    sprintf(text,"Napeti: %.2f [V]",u);
    lcd_puts(text);
    
}

/*-----Hlavni program-------------------------------------------------------------------------------------------------------------------*/
int main(void){
    

    /*Deklarace promennych a registru preruseni*/
    TCCR0 = 0b00000100;
    TCNT0 = 156;
    TIMSK |= 0b00000001;
    
    /*Nastaveni externi reference 5V AVcc na Aref*/
    ADMUX |=  (1 << REFS0);
            
    /*ADEN zapnuti ADC
      ADSC start prevodu
      ADFR opakovaci rezim
      ADIE povoleni preruseni
      ADPS2-0 nastaveni preddelicky 128, frekvence hodin 8Mhz*/ 
    ADCSRA |= (1 << ADEN) | (1 << ADSC) | (1 << ADFR) | (1 << ADIE) | (1 <<ADPS2) | (1 <<ADPS1)  | (1 <<ADPS0);

    /*Zapnuti displaye*/
    lcd_init(LCD_DISP_ON);
    
    /*Povoleni globalniho preruseni*/
    sei(); 
    
    /*Nekonecna smycka*/
    while(1);
};

díky za případné rady! 

Nahlásit jako SPAM
IP: 109.81.239.–
21. 2. 2014   #5
-
0
-

Vypadá to na chybu nastavení programátoru, asi nemáš vhodně zvolené taktování pro ISP (In System Programming). 

Jinak k samotnému programu:
1. ve věčné smyčce procesor běží a nic nedělá, zde bych volil přechod do Idle Mode - sníží se příkon
2. pro tak jednoduchou aplikaci je 8MHz taktování CPU zbytečné, stačí bez potíží 1MHz. Je to defaultní frekvence CPU. Opět nižší příkon CPU.
3. ADC bych si nastavil na cca 3 měření za sekundu. Pro zobrazení bohatě stačí. Pokud není tak "pomalý", spouštěl bych ADC časovačem.
4. Zobrazení bych řešil buď v obsluze přerušení ADC nebo v hlavním programu. Pokud je v Idle, probudí se po každém přerušení a vypíše aktuální hodnotu.

Konkrétní koncepce závisí na tom, co to má ještě dělat.

hu

Nahlásit jako SPAM
IP: 195.178.67.–
KIIV
~ Moderátor
+43
God of flame
21. 2. 2014   #6
-
0
-

akorat nezapomenout, ze pokud ADC budes spoustet jen pomoci ADSC a pouzijes prechod do sleep modu, tak se tim prechodem automaticky zapne prevod tez a po dokonceni se probudi..  a razem bys mel misto "uspory" spotreby jeste trosicku vetsi :)

Nahlásit jako SPAM
IP: 62.168.56.–
Program vždy dělá to co naprogramujete, ne to co chcete...
21. 2. 2014   #7
-
0
-

#5 hlucheucho
Díky za poznámky k samotnému kódu. Jsem začátečník, takže přijmu každou radu.

Jakým způsobem se nastavuje ten takt pro programátor? 

Nahlásit jako SPAM
IP: 109.81.239.–
21. 2. 2014   #8
-
0
-

Ještě bys měl zkontrolovat správnost zapojení. Jinak informace jak a co nastavit najdeš v manuálu programátoru. Musíš při tom respektovat hodnoty předepsané výrobcem procesoru. Většinou fungují defaultní hodnoty.

hu

Nahlásit jako SPAM
IP: 195.178.67.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 5 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý