mikroişlemci programlama

Haftasonu bir arkadaşımda mikroişlemci progralama yaptık. Yani her programlama dilinde olduğu gibi sadece "Hello world" felsefesine giriş yaptık.

Texas Instruments Incorporated firmasının mikroişlemci programlamak istediyen öğrenci ve yazılımcılara göndermiş olduğu kargo gelmişti. Kutudan bir adet Launch Pad çıkmıştı. Kırmızı renkte bir Launch Pad mikroişlemciyi koyacağımız bölümdür. Launch Pad 'in üstünde de bir usb girişi var. Bu usb girişi sayesinde bilgisayarımızda yazılımı yapıp Launch Pad 'in üzerine yerleştireceğimiz mikroişlemciye kodlarımızı entegre edeceğiz. Launch Pad 'in üzerinde de ayrıca 8 adet led var. İlk kodumuzda 5 tane ledi yaktık. Delay fonksiyonu ile her bir led in yanma süresini belirttik. 

Launch Pad 'in dışında kutudan MSP430 modeli 16 bit 512 byte 'lık bir mikroişlemci çıktı. Bu mikroişlemciyi Launch Pad 'e taktıktan sonra programımızı yükleyebileceğiz.

Mikroişlemci programlamak için gereken programın adı Code Composer Studio v4 Core Edition. Bu program sayesinde mikroişlemci programlayacağımız kodları yazıp, anında entegre edip çalıştırabileceğiz. Laucnh Pad ve program arasındaki bağlantıyı usb kablo ile yapıyoruz. Bu işlemi kodlarımızı yazdıktan sonra da yapabilirdik. Takılı da kalsın.:) biraz moda girebiliriz belki. 

Code Composer Studio v4 Core Edition programından bahsedeyim biraz. Program standart bir yazılım geliştirme programı. C programala dili kullanarak mikroişlemciyi programlayacağız. 

Kutunun içinden çıkan mikroişlemcinin programlayabilmek için msp430g2231 kütüphanesini kullanmamız gerekecek.
"#include  <msp430g2231.h>"  satırı ile bu mikroişlemcinin kodlamasını yapabileceğiz artık.

 void Delay(unsigned int i)
  {
        do (i--);
        while (i != 0);
  }

void main(void)
{
  WDTCTL = WDTPW + WDTHOLD;                 // Stop watchdog timer
  P1DIR |= 0x1f;                           // Set P1.0 to output direction
  P1OUT=0X00;
 
  for (;;)
  {
   
   
    if ((P1IN == 0x80))
    {
        //P1OUT &= ~0x01; Launch Pad üzerindeki butona basılı değilse; aşağıdaki kod satırımız çalşıacak.
        P1OUT=0X00;     }
    else
    {
        // butona basılırsa aşağıdaki kod satırlarımız çalışacak.
        P1OUT ^= 0x01;
        Delay(65535);
                P1OUT ^= 0x02; // 1. led yanacak ve daha sonra 2 saniye bekleyecek.
        Delay(20000);
                P1OUT ^= 0x04; // 2. led yanacak ve daha sonra 2 saniye bekleyecek.
        Delay(30000);
                P1OUT ^= 0x08; // 3. led yanacak ve daha sonra 2 saniye bekleyecek.
        Delay(40000);       
                P1OUT ^= 0x10; // 4. led yanacak ve daha sonra 2 saniye bekleyecek.
        Delay(65535);
        Delay(65535);
        Delay(65535);
        Delay(65535);
        Delay(65535);
    }
  } 
}

İlk mikroişlemci denememi yaptım. Aslında konu bana biraz uzak. Daha çok web tabanlı yazılım ile uğraştığım için mikroilemci ilerde programlayacağımı da sanmıyorum. Ama mikroişlemci programlayarak ledler de olsa "Merhaba Dünya" felsefesini uygulamak çok heyecanlıydı.

Selçuk 'a teşekkür ederim tekrar. Selçuk açılır kapı sistemlerinin kumanda, alıcı, kontrol kartı ve fotoseller gibi bölümlerinde mikroişlemcileri programlayacak. Kendisine onu yakın görüyor mikroişlemciliyor:) 

Tekrar yeni bir mikroişlemci uygulaması yaparsam yine yazarım. :) İnsanın kendi evinde kullandığı kumandayı yapması çok değişik bir durum olsa gerek.

Türk müsün?

 

 Büyük Hun İmparatorluğu (M.Ö. 204-M.S. 216)
 

 Batı Hun İmparatorluğu (M.S. 48-216)
 

 Avrupa Hun İmparatorluğu (M.S. 375-469)
 

 Ak Hun İmparatorluğu (M.S. 420-552)
 

 Göktürk İmparatorluğu (M.S. 552-745)
 

 Avar İmparatorluğu (M.S. 565-835)
 

 Hazar İmparatorluğu (M.S. 651-983)
 

 (M.S. 745-1368)
 

 Karahanlılar (M.S. 940-1040)
 

 Gazneliler (M.S. 962-1183)
 

 Büyük Selçuklu İmparatorluğu M.S. 1040-1157
 

 Harzemşahlar (M.S. 1097-1231)
 

 Altınordu Devleti (M.S. 1236-1502)
 

 Büyük Timur İmparatorluğu (M.S. 1368-1501)
 

 Babür İmparatorluğu (M.S. 1526-1858)
 

 Osmanlı İmparatorluğu (M.S. 1299-19

Cumhurbaşkanlığı Forsu 'ndaki 8 uzun 8 tane de kısa ışın olarak düzenlenmiş oklar mevcut. 16 ışın tarihteki bağımsız büyük Türk Devletlerini simgelemektedir.

Kızılay'ın "Kanımızın Yetmemesi Kanımıza Dokunuyor!" sloganıyla başlattığı ulusal kan bağışı kampanyasına destek büyüyor.

Kızılay'dan yapılan açıklamada, kampanyayla ilgili verilen bilgilerde, "Kan, kaynağı sadece insanda olan, yapay olarak üretilemeyen hayati bir maddedir. Ülkemizde gönüllü kan bağışçısı sayısı yeterli olmadığı için, toplanan ve saklanan kan miktarı maalesef ulusal ihtiyacımızı karşılamamaktadır. Bunun için sık sık acil kan anonsları yapılmakta, hastane önlerinde kan simsarlarından alınan kanlar ise hayati tehlike yaratmaktadır. Türk Kızılay'ı, bağışlanan kanın, ihtiyacı olan kişiye ulaşmasına kadar geçen tüm süreci kontrol altına alan uluslararası standartlarda bilimsel bir sistem oluşturmuştur. Kanın, ihtiyaç sahibine en güvenli şekilde ulaştırılması ancak bu yolla mümkün olabilmektedir. Ancak gönüllü kan bağışçısı sayısı yeterli olmadığından, ülkemizde bir yıl içinde toplanan kanların yalnızca % 40'ı Dünya Sağlık Örgütü'nün önerdiği şekilde Türk Kızılay'ı sayesinde düzenli, gönüllü ve bilinçli kan bağışçıları ile karşılanmaktadır. Geri kalan bölümü ise hala takas yöntemi ile toplanmaktadır. Çağdaş ve ülkemize yakışan çözüm; dünyanın gelişmiş ülkelerde olduğu gibi  kan ihtiyacının tamamının, ulusal bir kan bankası aracılığıyla gönüllülerden karşılanmasıdır. Kan vermenin insan sağlığına zararlı yanının olmadığı tespit edilmiştir: Bilimsel araştırmalara göre 18-65 yaş arasındaki sağlıklı bireyler, 3 ayda bir (yılda 4 kez) kan verebilir. Kanımızın yetmemesi sizin de kanınıza dokunuyorsa, bugün başkalarının, yarın sizin veya yakınlarınızın kana ihtiyaç duyabileceğinin siz de farkındaysanız…sadece 25 dakikanızı ayırarak ülkemizin kan ihtiyacını karşılayabilir, binlerce hayat kurtarabilirsiniz. Ülkesini ve insanını seven, sorumluluk sahibi, tüm iyi insanlarımızı  gönüllü kan bağışçısı olmak için Türk Kızılay'ına kan vermeye çağırıyoruz" görüşlerine yer verildi.

Kampanya bilgilerine ulaşmak için kanver.org sitesine bakabilirsiniz.

c# resim ekleme kodu, .net resim eklemek, resim upload

 

resimEkle.aspx

 

<table><tr><tdstyle="width: 274px; text-align: left">

 

Ürün Resimi<br/>

 

<asp:fileuploadid="dosyaYukle"runat="server"/><br/>

 

<asp:buttonid="resGonder"runat="server"cssclass="ekle"text="Resim Ekle"onclick="resGonder_Click"/><br/>

 

<asp:labelid="lblEklemeDurumu"runat="server"text=""></asp:label>br/><br/>

 

360 x 360 ölçülerinde olmalıdır.

 

</td></tr><tr>

 

<tdstyle="width: 274px">

 

Eklenecek Olan Resim<br/>

 

<asp:imageid="imgUrun"runat="server"/>

</td></tr></table>

 

 

resimEkle.aspx.cs   

 

string ResimAdi;

protectedvoid resGonder_Click(object sender, EventArgs e)
{

if (dosyaYukle.HasFile)
{
ResimAdi = dosyaYukle.FileName;
dosyaYukle.SaveAs(Server.MapPath(
"../urunler/") + dosyaYukle.FileName);
// VeritabanınaYaz(); buradakı method la veritabanına resim ekleyebilirsiniz.
lblEklemeDurumu.ForeColor = System.Drawing.
Color.Green;
lblEklemeDurumu.Text =
"Resim eklendi.";
}
else { lblEklemeDurumu.ForeColor = System.Drawing.Color.Red; lblEklemeDurumu.Text = "Resim kaydedilemedi."; }

}

 

// Veritabanına ekleme methodunu kendiniz ekleyebilirsiniz.

bu kod parçacıkları ile resim ekleyebilirsiniz. Bu kod sadece resimi server 'a upload ediyor.

c#'da resim ölçülendirerek kaydetme

Resim upload paneli ilk başlarda işkence gibi olabilir. Resim eklemek bazen sıkıntı oluşturabiliyor. Resim istediğim ölçülerde değil? resmin kalitesi bozuldu. Yükseklik ve genişliğini nnasıl ayarlayacağım? Standart bir görünüm nasıl kazanırım? gibi sorularınız varsa, bu kod parçacığı ile hemen hemen bütün sorunlarınız giderilecektir. Bir sonraki kod bloğumuzda ise eklenen resmin bir köşesine siteninin adını yazarak, başka sitelerde de kullanılmasını engelleyeceğiz.

 İlk olarak formumuza bir fileupload1 ve button1 ekleyeceğiz.

daha sonra button1 'in click anında ftpYaz(); diye bir method çalıştıracağız. 

 

 private void ftpYaz()
    {
        byte[] resim = fuResim.FileBytes;
        if (resim != null)
        {
            try
            {

                MemoryStream mem = new MemoryStream(fuResim.FileBytes);
                Bitmap bmpResim = new Bitmap(mem);
 
                ResimIslem cizb = new ResimIslem();
                string dosyaPathbuyuk = Server.MapPath("~/images/products/") + SonID + "_.jpg";
                fuResim.PostedFile.SaveAs(dosyaPathbuyuk);
                System.Drawing.Image bmpKucuk = cizb.ResimOlustur(100, dosyaPathbuyuk);
                bmpKucuk.Save(dosyaPathbuyuk, ImageFormat.Jpeg);


                ResimIslem cizk = new ResimIslem();
                dosyaPathbuyuk = Server.MapPath("~/images/products/") + SonID + ".jpg";
                fuResim.PostedFile.SaveAs(dosyaPathbuyuk);
                System.Drawing.Image buyuk = cizk.ResimOlustur(600, dosyaPathbuyuk);
                buyuk.Save(dosyaPathbuyuk, ImageFormat.Jpeg);
               //bu kod ile resmi belirlenen klasöre 600 yüksekliğinde ve bu ölçüye göre otomatik genişlik verebiliyoruz. 

           }
            catch (Exception)
            { lblEklemeDurumu.ForeColor = Color.Red; lblEklemeDurumu.Text = "Resim Ekleme Sırasında Bir Sorun Oluştu"; }
        }
    } 

 

bu kod ile sıkınt yaşayacağınızı sanmıyorum. En stabil kullanılan şekli bu olacaktır. İyi çalışmalar.

Dünyanın en uzun türkçe kelimesi tam 70 harf

Aşağıda göreceğiniz kelime dünyanın en uzun türkçe kelimesiymiş. Birden fazla sayabilirsiniz:) , tam 70 haften oluşuyor.

Bir zamanlar herkesin dilinde olan ve söylemesi çok zor olan "çekoslovakyalılaştıramadıklarımızdan mısınız?" lafına benziyor ancak bu en uzun kelimeden bir anlam çıkartabilecekmisiniz?

 

İşte dünyanın en uzun türkçe kelimesi: 

 
muvaffakiyetsizleştiricileştiriveremeyebileceklerimizdenmişsinizcesine

“Raffine – Serüvenim” Albümü

Ve sonunda beklenen albüm sizlerle..

“RAFFİNE – SERÜVENİM”

Uzun zaman aradan sonra Underground Rap’in en başarılı isimlerinden Raffine‘nin yeni albümü bugün sizlerle. Bukadar uzamasının sebebini belirttik, çok aksilik geldi albümün başına ama hoş geldi albüm..

Albüm’ün Beatleri Raffineri bünyesinde yer alan Zet & H-Forsa‘ya ait. Albümün mixlerinin çoğu Raffine‘nin kendisine ait. Albüm son zamanlarda sıkıldığınız hep aynı tarzlardan uzak bir albüm. Raffine bu sefer çok iddaalı bir şekilde Underground’un en iyisi olduğunu bu albümle tekrardan kanıtladı.

Dinleyince sizde anlayacaksınız..

9 Şarkı’dan oluşan albümde her stil bulunmakta. Keyifle dinleyeceğinize eminim.

Klasikleşen sözlerden uzak ve akılınızdan uzun süre çıkmayacak Sözleri ve Beatlerle “Serüvenim” albümünü Raffineri Gururla Sunar..

İyi Dinlemeler..

“Raffine – Serüvenim” albümünü indirmek için tıklayın!

Zararlı olabilecek bir değer Request.Form algılandı c# hatası

c# da text boxlara html içerik girince karşımıza

"Zararlı olabilecek bir değer Request.Form algılandı" hatası çıkacaktır.

örneğin; <br> ile 1 satır ara ile iki veri giricez. bunun için text box izin vermeyecektir. Ya bir text editör kullanacağız ya da sayfamızın üst kısmındaki

<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="Default.aspx.cs"Inherits="Default" %>

bulunan e üst kısıma
PageLanguage="C#"ValidateRequest="false"
  olmasını sağlayacağız, ve istekleri doğrula seçeneğimizi iptal edeceğiz ve her türli yazı karakterini textboxa yazdırıp bu veriyi kullanabileceğiz

made in china (goojjle.com ve baidu.com hakkında)

dünyanın en kalabalık ülkesi lan Çin yeniliklerine devam ediyor. En son duyduğum SKPYE 'ı ülkede yasaklamasıydı. Google 'u kapattıkdan sonra baidu.com ve goojjle.com u açtı. baidu zaten çok kullanılıyor. goojjle.com ise beta2 versiyonuyla yayında. zaten bu yazıyı yazarken hata mesajıyla karşılaştım.

http://www.goojje.com/s?tp=web&l=cn&key=nuh+%C3%B6zcan

adres çubuğunda bu yazı var. 

HTTP Status 500 -


type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

com.mongodb.MongoException$Network: can't call something
com.mongodb.DBTCPConnector.call(DBTCPConnector.java:189)
com.mongodb.DBTCPConnector.call(DBTCPConnector.java:187)
com.mongodb.DBTCPConnector.call(DBTCPConnector.java:187)
com.mongodb.DBApiLayer$MyCollection.__find(DBApiLayer.java:277)
com.mongodb.DBCollection.findOne(DBCollection.java:366)
com.mongodb.DBCollection.findOne(DBCollection.java:355)
com.mongodb.DB.command(DB.java:135)
com.mongodb.DBCollection.getCount(DBCollection.java:513)
com.mongodb.DBCursor.count(DBCursor.java:498)
savedata.MongoData.CheackIsSave(MongoData.java:96)
SeachBase.SeachBase.WebSeachBase(SeachBase.java:93)
Selevrt.s.doGet(s.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

root cause

 

gibi bir hata mesajı aldım. beta2 olduğu için tam ne zaman açılacak merak ediyorum. kendi kendine kendi pazar payı zaten çine yeter. kendi nüfusuna hizmet vermesi yeterli gibi.

kısacası çin kendi yağında kavrulur. google u da kapatır. skype ı da kapatır. yoluna devam eder...

Lenova - Lephone

 Her dokunmatik ekranlı telefon aynı görünecek diye bir şey yok.

 Lenovo, CES fuarında uzaktan gözterdiği LePhone adlı dokunmatik akıllı telefonunu resmi olarak tanıttı. Genelde iPhone'u taklit etmekten yana bir tavır sergileyen üreticilerin aksine farklı bir tasarıma imza atmak isteyen şirket, ilk bakışta bile anlaşılan başarılı bir sonuç yakalamış.

3.7 inç ekranlı, 3 megapiksel fotoğraf makineli, WiFi, GPS telefonun olayı ise,  istendiği takdirde klavyeli olan bölümden çıkartılıp dokunmatik pozisyonda da kullanılabiliyor oluşu. Klavyesinin olduğu bölümde ikinci bir pile ve stereo hoparlörlere sahip olan LePhone, bizce hayli yaratıcı bir dostumuz.

1 GHz Snapdragon işlemci ve Android işletim sistemi ile çalışan LePhone, 2010'un ilk yarısından itibaren Çin'den başlamak üzere satışa çıkacak. Umarız buraya gelmesi çok uzun sürmez.

 

 

    

Calendar

<<  July 2019  >>
MoTuWeThFrSaSu
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

View posts in large calendar

Tag cloud

Page List

RecentComments

Newsletter

Get notified when a new post is published.