<p>I need a simple table with a user name and password field in MySQL. Since user names must be unique, it makes sense to me to make them the primary key.</p>

<p>Is it better to use <code>CHAR()</code> or <code>VARCHAR()</code> as a primary key? </p>

may as well just use a user ID index, it's much faster for joins vs char/varchar. the two seconds it takes to add that now could save you a lot of time later if you accidently have to expand the functionality of your schema.
some pitfalls to think about:
say we add a few tables at a future date, what if someone wants to change a username?
say the app is more successful then we think, and we have to look at optimization, do you really want to redo your schema at this point to reduce the overhead of a varchar'ed index?